我如何通过触发却避免了该错误,但是DBMS丢失了它?

时间:2018-12-05 21:20:05

标签: oracle plsql

我创建了一个触发器,该触发器会自动插入5个字符和数字的随机密码 给任何新雇用的警察

CREATE OR REPLACE TRIGGER POLICE_NO_TRIGG_11111
BEFORE INSERT ON police
FOR EACH ROW
BEGIN
SELECT dbms_random.string('x', 5)
INTO   :new.password
FROM   dual;
END;

触发创建

然后,我去了bulider表格,很遗憾,无法插入,请参见图片 enter image description here

我回到了sql命令,这是发生了什么 看图片

enter image description here

请帮忙!

有关光盘警察表的更多信息,请参见此 enter image description here

1 个答案:

答案 0 :(得分:0)

您的触发器似乎无效。在我不知道表定义的情况下,触发代码对我来说似乎很好。

执行时您可能会找到一些信息

select * from user_errors where type = 'TRIGGER' and name = 'POLICE_NO_TRIGG_11111';

如果这没有帮助,也许您找到f urther information here.