我想知道是否可以从触发器返回DB ERROR代码,而不是使用RAISE_APPLICATION_ERROR创建的自定义异常。我有一些要求,我需要为唯一约束返回一个数据库错误代码,例如 1。我问这个问题是有目的的,因为出于某种原因,对于某些基于哈希的分区,我们不会在表上创建唯一的约束,而是有一个三角符,我想在检查记录是否存在后返回 Unique 约束作为错误代码数据库。
您可以使用:
RAISE DUP_VAL_ON_INDEX;
只有在这种情况下,您才能将任何参数传递给此错误,您将获得:
ORA-00001:违反唯一约束 (.)