多行插入中ATOMIC和NON ATOMIC子句的用途是什么?您将如何在COBOL-DB2程序中使用它们?举例说明。

ATOMIC和NON ATOMIC子句与多行插入一起使用。如果未提供任何选项,则默认情况下始终会处理ATOMIC。ATOMIC子句指出,如果在多行插入过程中插入任一行时发生故障,则整个查询将失败,并且所有插入都将回滚。

NON ATOMIC子句与ATOMIC子句恰好相反。当我们必须在多行插入中分别插入和处理所有行时使用它。例如,可以像下面这样使用该选项。

MOVE 50 TO MAX-ROWS
EXEC SQL
   INSERT INTO ORDERS (ORDER_ID, ORDER_DATE)
   VALUES(:ORDER-ID, :ORDER-DATE) FOR
   :MAX-ROWS ROWS NON ATOMIC
END-EXEC
猜你喜欢