采用存储过程的方式批量更新数据

  


采用存储过程的方式批量更新数据,甲骨文中也可采用merge-update的方式更新,不过采用如下存储过程的方式会更快些

申报的东西   MAX_ROWS 才能,,,,,,,,,,,,NUMBER  DEFAULT  5000;   ROW_ID_TABLE 才能,,,,,,,,DBMS_SQL.UROWID_TABLE;   DATE_TIME_TABLE 才能,,,,,,DBMS_SQL.DATE_TABLE;   CURSOR 才能;C1    ,,,SELECT /* +, use_hash (t1, t2),并行(t1, 2),并行(t2, 2), */,,,,,T1.DATE_TIME T2.ROWID   ,,,,,得到TEST_TABLE_1  T1, T2 TEST_TABLE_2    ,,,,WHERE  T1.TABLE_ID =T2.TABLE_ID   ,,,,,,以及T2.DATE_TIME  IS  NULL   ,,,,,,以及T1.DATE_TIME  IS  NOT  NULL   ,,,,,,ORDER  BY  T2.ROWID;   开始   OPEN 才能,C1;   ,循环   ,,,EXIT  WHEN  C1%NOTFOUND;   ,,,FETCH  C1  BULK 收集   ,,,,,INTO  DATE_TIME_TABLE,, ROW_ID_TABLE  LIMIT  MAX_ROWS;   ,,,FORALL 小姐:1,拷贝. . ROW_ID_TABLE.COUNT   ,,,,,UPDATE  TEST_TABLE_2   ,,,,,,,,SET  DATE_TIME =, DATE_TIME_TABLE(我),LCD=SYSDATE   ,,,,,,WHERE  ROWID =, ROW_ID_TABLE(我);   ,,,提交;   最终获得才能;循环;   CLOSE 才能,C1;   结束;/


采用存储过程的方式批量更新数据