RPG嵌入式SQL集选项commit = * CS

时间:2017-02-06 23:39:58

标签: db2 db2-400 rpgle

在使用嵌入式SQL的自由格式RPG中,我为我的SQL选项指定了这个:

exec sql
 set option commit=*CS,
 datfmt=*iso,
 closqlcsr=*endmod;

如果我指定commit=*CS,我是否需要在我的SQL select语句中指定WITH CS,或者是因为我在set选项中指定了它?

如果我指定commit=*none,然后在我的SQL select语句中指定WITH CSWITH CS将生效,因为在我的设置选项提交中我说*none

1 个答案:

答案 0 :(得分:1)

set option语句设置模块中所有语句的默认值。

该默认值可以被单个语句中的WITH子句覆盖。

所以用

exec sql
 set option commit=*CS,
 datfmt=*iso,
 closqlcsr=*endmod;

没有WITH子句的语句将使用提交控制和游标稳定性的隔离级别。 WITH NC的语句不会使用承诺控制,而WITH RS的语句将使用承诺控制和隔离级别读稳定性。

注意:closqlcsr=*endmod会影响性能。它通常用作设计不良和/或过时应用的创可贴。