不用不知道,一用吓一跳。。看下面这条SQL语句
String sql="update cats set name_alias='"+rs.getString(1)+"'where name='"+rs.getString(1)+"'";
如果数据量很小的话,肯定不会存在什么问题,一眨眼就更新好了。但如果是大一点的表,不用说几百万条,几万条记录就已经要耗费小时级别的时间了。
解决方法就是where条件里面的字段一定要加索引,一般直接利用表的主索引就可以了,例如下面这条SQL语句,id就是主索引。
String sql="update cats set name_alias='00000'where id='"+rs.getInt(1)+"'";
这样优化之后,更新的速度就大幅增加,几分钟就可以搞定万级别的更新操作。