ORA-00942:表或视图不存在

时间:2017-09-01 17:02:19

标签: sql database oracle

我正在尝试在Oracle中创建一个触发器,但它正在返回错误

  

ORA-00942:表或视图不存在

这是表格:

CREATE TABLE quartos(
    idQuarto NUMBER(11), 
    numeroQ NUMBER(11), 
    limitePessoas NUMBER(2), 
    valorDiaria NUMBER(10,2), 
    situacao NUMBER(1), CONSTRAINT idQuarto_pk PRIMARY KEY (idQuarto)
);

以下是序列:

CREATE sequence "quartos_seq";

这是触发器:

CREATE trigger "bi_quartos"
  before insert on "quartos"
  for each row
begin
  select "quartos_seq".nextval into :NEW."idQuarto" from dual;
end;

我以同样的方式创建另一个触发器,没有出错。我刚刚更改了参数,现在又返回了该错误

2 个答案:

答案 0 :(得分:0)

中删除双引号

创建触发器“bi_quartos”   插入 “quartos”

之前

表名称将转换为大写。你正在做的是强迫它搜索一个不存在的小写表。

答案 1 :(得分:0)

您正在为表名和列名混合区分大小写且不区分大小写的标识符。

如果未将原始声明包装在双引号中,则会将其创建为不区分大小写,并且在尝试使用它们时不能使用双引号:

CREATE or replace trigger "bi_quartos" before insert on quartos for each row begin select "quartos_seq".nextval into :new.idQuarto from dual; end;