标签: postgresql
系统异常只能传播。无法将异常记录到表中,只能将其记录到postgresql中的日志文件/服务器日志中。
答案 0 :(得分:2)
当您执行ROLLBACK时,所有对该数据库的所有更改都会被撤消,甚至是对您的日志记录表的更改。
ROLLBACK
解决方案是使用savepoints。
如果您在PostgreSQL函数之外编写SQL,请使用SAVEPOINT和ROLLBACK TO SAVEPOINT。
SAVEPOINT
ROLLBACK TO SAVEPOINT
如果您正在编写PL/pgSQL函数,请使用BEGIN ... END块的EXCEPTION子句在异常后继续处理。
BEGIN ... END
EXCEPTION