0

在 pgc 代码中,我做了一种:

exec sql begin work;
exec sql prepare my_rqt from :rqt_insert  ;   
exec sql execute my_rqt using :foo, :bar ;
if ( sqlca.sqlcode == 0 ){
    exec sql deallocate prepare my_rqt ;
    exec sql commit ;
} else {
    exec sql deallocate prepare my_rqt ;
    exec sql rollback ;
}

插入工作时,一切都很好,但在其他情况下,我在“deallocate”语句中收到错误:

sqlca.sqlstate:26000:第 xx 行的无效语句“my_rqt”

如果我在回滚取消分配,我不会收到此消息。我在任何文档中都找不到任何示例代码。

感谢您在正确的顺序上做这些事情的任何帮助。

4

1 回答 1

0

一旦出现错误,事务就会中止,并且在回滚之前您无法执行任何操作。

于 2020-10-15T15:45:22.680 回答