2017-09-01 109 views
0

我想在Oracle中創建觸發器,但它返回錯誤ORA-00942:表或視圖不存在

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; 

我creatend以同樣的方式和以前沒有什麼其他觸發了問題。我只是改變了參數,現在它返回的錯誤

回答

0

插入之前,從

去除雙引號CREATE TRIGGER 「bi_quartos」 上「quartos」


表名轉換爲大寫。你正在做的是強迫它搜索一個不存在的小寫表格。

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;

相關問題