每个INSERT语句后都有COMMIT。
我想知道在COMMIT;
...
INSERT /*+ append */
答案 0 :(得分:0)
COMMIT
后并不总是需要INSERT /*+ APPEND */ ...
。但由于直接路径写入引起的问题,这是一个非常常见的约定。直接路径插入直接写入数据文件。这会将该段与其他DML锁定,甚至会阻止同一会话查询该表,否则它将生成ORA-12838: cannot read/modify an object after modifying it in parallel
。
除了这些限制之外,何时提交在很大程度上取决于应用程序的事务概念,正如Brian Driscoll指出的那样。