Oracle update特别慢,比insert慢很多很多
我用JDBC的PreparedStatement往Oracle的一个表里面插入数据和更新数据。
两个Connection创建两个PreparedStatement,一个用来执行insert另外一个用来执行update。
PreparedStatement使用批处理的方式,1000条commit一次。
表里面一共100W条数据,
执行3W条insert语句花了52秒;
执行3W条update语句花了1058秒。
表结构:
dept(deptno,dname,loc);
插入数据SQL:insert into TEST.DEPT(DEPTNO, DNAME, LOC) values (?, ?, ?)
更新数据SQL:update TEST.DEPT set DNAME = ?, LOC = ? where DEPTNO = ?
此表没有约束和索引。
请问,update为什么花这么长时间? 没更新1000条,花30-40秒。