当前位置: 代码迷 >> J2EE >> 关于jdbc数据删除速度非常慢的有关问题
  详细解决方案

关于jdbc数据删除速度非常慢的有关问题

热度:53   发布时间:2016-04-17 23:11:07.0
关于jdbc数据删除速度非常慢的问题
1、JDBC  其实执行的就是 

delete from xx t where t.a='1'

就是删除一个表里面的记录。


这个表记录大概万条,整个删除执行完,大概花了70多秒。太慢了。


这个表 就有一个外键,关联另外一个表。 where条件 已加上索引。

谢谢。
------解决思路----------------------
不知道lz使用的什么数据库, 如果是SQL Server, lz可以使用 SQL Server Profiler 工具, 检查是哪部分拖慢了运行速度, 有时候并不是数据库拖慢了速度的. 直接打开SQL Server Profiler工具,新建跟踪, 执行程序...

如果是其他数据库,应该也有相应的性能分析工具. lz可以找一个试试
------解决思路----------------------
想问下另外关联的表上的记录数,外键上是否有索引
------解决思路----------------------
oracle 不太了解, 不过肯定有性能分析工具, 那么庞大的数据库, 感觉比SQL server强大好多, 咋会没有分析工具勒, 
------解决思路----------------------
70S删除1w条记录,平均每秒删除140条,如果这些语句都是独立执行的,考虑到命令传输速度,应该是要话费这么长的时间的。如果有其它表关联到本表的话,那么时间还要长。
建议LZ可以改成where t.a in (?,?,...)这样的方式,一次删除100条记录看看
  相关解决方案