【问题标题】:Oracle Trigger Issue (Toad)Oracle 触发器问题 (Toad)
【发布时间】:2017-01-25 03:34:57
【问题描述】:

Oracle 11g/XE 蟾蜍 12.7.1.11

我有一个新安装的数据库。以 SYS 身份连接,使用密码创建了一个名为“jasons”的用户并授予 DBA。断开连接并重新连接为“杰森”。然后运行以下脚本:

CREATE SEQUENCE people_seq
  MINVALUE 0
  MAXVALUE 10000
  START WITH 0
  INCREMENT BY 1
  CACHE 20; 
 commit;


 create table people (PID number(10), FirstName varchar(20), LastName varchar(20));
 commit;


 alter table people add (constraint people_pk primary key (PID));
 commit;


CREATE OR REPLACE TRIGGER people_trig 
BEFORE INSERT ON people 
FOR EACH ROW

BEGIN
  SELECT people_seq.NEXTVAL
  INTO   :new.pid
  FROM   dual;
END;
commit;

当我运行脚本时,一切都很顺利,直到 CREATE TRIGGER 部分。它抛出:

ORA-04089: cannot create triggers on objects owned by SYS

我刚刚以 jasons 的身份创建了那张桌子!谁能告诉我这是怎么回事?

【问题讨论】:

    标签: oracle11g triggers database-administration


    【解决方案1】:

    呃……

    在 Toad 中建立新连接时,右侧中间有一个漂亮的小下拉框,上面写着“连接为”,您可以选择 Normal、SYSDBA 和 SYSOPER。

    它默认为 SYSDBA -- 但是当你选择“正常”时......嗯......上面的脚本工作得很好;-)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-06-21
      • 1970-01-01
      • 2022-01-20
      • 2011-04-06
      • 2017-06-11
      • 2016-05-21
      • 2012-04-04
      相关资源
      最近更新 更多