在SQL中,如何在更新时抛出错误' not null'数据库表中的值

时间:2015-10-02 09:39:25

标签: sql oracle plsql oracle-apex

想要抛出一个错误,其中我更新的值是' not null'值。

例如。在下表中,我想要更新Paul的姓氏和杰克逊'。 SQL应该抛出一个错误,说明正在更新的值是'#null;'。

  

姓氏第一名
保罗·帕金森土耳其无效

作为这个问题的第二部分,我实际上希望在APEX Express数据加载向导中执行此操作。如果有人知道如何修改更新命令来执行此操作,将非常感谢

1 个答案:

答案 0 :(得分:1)

您需要使用触发器执行此操作。示例触发器:

create trigger schema.trigger_name
    before update of last_name
    on tablename
    for each row
begin
    if :old.last_name is not null then
        raise_application_error (-20100, 'Last name already has a value');
    end if;
end;
/

但是这会通过引发plsql错误来停止正在运行的任何进程。