数据库技术
环境:oracle 11g 现有a表与b表通过a01字段关联,要查询出a表的数据在b表没有数据的数据;sql如下 因为flag是虚拟字段没有走不了索引导致这条sql执行起来特别慢 310W条数据查总数花费2秒左右。 利用not exists优化sql如下 利用not exists走索引,执行花费时间 ...
网上关于SQL优化的教程很多,但是比较杂乱。近日有空整理了一下,写出来跟大家分享一下,其中有错误和不足的地方,还请大家纠正补充。 这篇文章我花费了大量的时间查找资料、修改、排版,希望大家阅读之后,感觉好的话推荐给更多的人,让更多的人看到、纠正以及补充。 1.对查询进行优化,要尽量避免全表扫描,首先应 ...
数据库SQL优化——使用EXIST代替IN 1,查询进行优化,应尽量避免全表扫描 对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引 . 尝试下面的技巧以避免优化器错选了表扫描: · 使用ANALYZE TABLEtbl_name为扫描的表更新关键 ...
一、业务背景 由于需要从A数据库提取大量数据同步到B系统,采用了tomikos+jta进行分布式事务管理,先将系统数据源切换到数据提供方,将需要同步的数据查询出来,然后再将系统数据源切换到数据接收方,进行批量的插入和更新操作, 关于数据源的切换可以参考之前的文章《spring+springMVC+M ...
编写程序: 1. 创建商品信息表Goods(包含编号Code、名称Name、数量Number、单价Price) 2. 设计程序流程,由用户选择:插入、删除、修改、查询 程序效果如下: (1)根据提示输入:1.插入 2.删除 3.修改 4.查询 (2)如果用户选择1. 则提示用户输入商品的编号、名称、 ...
很多人采用OleDB读取EXCEL文件的时候会发现,当一列数据以数字开头的时候,后面的字符串无法读取,今天就给大家分享一下解决此问题的小窍门。 1、把列标题当做数据来读取(HDR=NO设置把第一行当做数据而不是表头来处理): string strConn = "Provider=Microsoft. ...
最近遇到一个案例,很多查询被阻塞没有返回结果,使用show processlist查看,发现不少MySQL线程处于Waiting for table flush状态,查询语句一直被阻塞,只能通过Kill进程来解决。那么我们先来看看Waiting for table flush的官方解释:https:... ...
Python初次连接数据库总结 用JDBC访问Oracle,即java连接本机数据库的时候,地址用localhost和127.0.0.1都可以。但是这两者有什么区别?哪个更好?有很多人认为这两个是完全一样的,也有人认为127.0.0.1更好,因为是本地IP,不需要从域名解析。 一. 两者区别 1. ...
问题一描述:SQL Server数据库备份还原后,在数据库名称后会出现“受限制访问”字样问题二描述:在对SQL Server数据库进行还原时,提示:System.Data.SqlClient.SqlError:因为数据库正在使用,所以无法获得对数据库的独占访问权。(Microsoft.SqlServ ...
转:http://www.cnblogs.com/dsky/archive/2013/05/15/3079363.html 转:http://www.cnblogs.com/dsky/archive/2013/05/15/3079363.html 转:http://www.cnblogs.com/d ...