Plsql Oracle SQL开发人员:触发器
大家好,PL/SQL专家 你知道我怎么用“蝙蝠侠”这个词吗Plsql Oracle SQL开发人员:触发器,plsql,oracle11g,Plsql,Oracle11g,大家好,PL/SQL专家 你知道我怎么用“蝙蝠侠”这个词吗 INSERT INTO SUPERHEROES VALUES ('Batman'); 所以我可以得到下面的输出 1 row inserted. 你加了蝙蝠侠 当我运行触发器函数时?我使用了下面的语句,但它没有显示蝙蝠侠。提前谢谢你!注意:我刚刚开始学习sql 这是一个代码: CREATE OR REPLACE TRIGGER TRIG_SUPERHEROES BEFORE INSERT ON SUPERHEROES FOR EACH
INSERT INTO SUPERHEROES VALUES ('Batman');
所以我可以得到下面的输出
1 row inserted.
你加了蝙蝠侠
当我运行触发器函数时?我使用了下面的语句,但它没有显示蝙蝠侠。提前谢谢你!注意:我刚刚开始学习sql
这是一个代码:
CREATE OR REPLACE TRIGGER TRIG_SUPERHEROES
BEFORE INSERT ON SUPERHEROES
FOR EACH ROW
ENABLE
DECLARE
V_USER VARCHAR(20);
SH_NAME VARCHAR(20);
BEGIN`enter code here`
SELECT USER INTO V_USER FROM DUAL;
DBMS_OUTPUT.PUT_LINE('YOU JUST ADDED NEW RECORD ' ||SH_NAME);
END;
您必须使用:new.sh_name
:old包含旧记录状态,:new包含for each row触发器中的新记录状态。格式化代码非常感谢!!!!除此之外,如果超级英雄表中已经存在new.sh_名称,是否可以添加IF或exists条件?我的目标是,在它插入超级英雄表之前,它将首先检查它是否已经存在。否则,它将不会插入到表中。它将首先检查它是否已经存在。不要为此使用触发器,而是向表中添加唯一约束或主键,这是正确的方法。