使用antdb数据库,出现“ERROR: current transaction is aborted, commands ignored until end of transaction block”提示。

0 sand 1年前 446次点击

如题,使用antdb数据库,出现“ERROR: current transaction is aborted, commands ignored until end of transaction block”提示。

共 1 条评论
JESS 1年前
0 

解决方式

业务在代码中捕获该异常,并手工执行一次rollback操作。
或断开该连接后重新建链即可。
下面给出一个示例说明:

antdb=# begin;
BEGIN
antdb=# select * from sy01;
id

adc8775e-4539-4861-9454-ceae45c568f7
(1 row)

antdb=# select * from sy011;
ERROR: relation "sy011" does not exist
LINE 1: select * from sy011;
^
antdb=# select * from sy011;
ERROR: current transaction is aborted, commands ignored until end of transaction block
antdb=# rollback ;
ROLLBACK
antdb=# begin;
BEGIN
antdb=# select * from sy01;
id

adc8775e-4539-4861-9454-ceae45c568f7
(1 row)

antdb=# commit;
COMMIT

原因说明

AntDB区别于oracle的设计,不会在发生异常后自动回滚。需用户手工执行一次回滚操作即可。
手工回滚后复用该连接就不会报错了。

添加一条新评论

登录后可以发表评论 去登录