ora-0401表XXが変化しました。トリガー/関数が読めないエラー処理です。
24205 ワード
開発中にora-0401のエラーに遭遇しました。表XXにエラーが発生しました。トリガー/関数は読めません。
以下はシミュレーションシーンです。
表PRODUCTS:
以下はシミュレーションシーンです。
表PRODUCTS:
CREATE TABLE CKSP.PRODUCTS
(
ID NUMBER(1) NOT NULL,
NAME VRCHAR2(100) NOT NULL,
PRICE1 NUMBER(1) NOT NULL,
PRICE2 NUMBER(1) NOT NULL
)
TABLESPACE USERS
NOLOGGING
PCTFREE 10
PCTUSED 0
INITRANS 1
MAXTRANS 255
STORAGE(BUFFER_POOL DEFAULT)
NOPARALLEL
NOCACHE
トリガーTRG_を する。PRODUCTS_INSERT:CREATE OR REPLACE TRIGGER TRG_PRODUCTS_INSERT
BEFORE INSERT
オン PRODUCTS
REFERENCING OLD AS OLD NEW AS NEW
FOR EACH ROW
declare
varCount number;
begin
プロジェクト count(id) イント varCount from products where name = :new.name;
if varCount > 0 then
varCount:= varCount +1;
:new.name :=varCount||'_'||:new.name;
end if;
end;
のSQLを するとORA-0401エラーが します。begin
インセンス イント products values(1,'p1',1,2);
インセンス イント products
プロジェクト 2 as id ,name ,price1,price2 from products where id= 1;
end;
:SQLを すると の りです。declare
varName varrhar2(100);
varPrice1 number;
varPrice2 number;
begin
インセンス イント products values(1,'p1',1,2);
プロジェクト name,price1,price2 イント varName,varPrice1,varPrice2 from products where id =1;
インセンス イント products values(2,varName,varprice1,varPrice2);
end;
この はINSERT INTO XXX SELECTを できません。 は を って を します。
これは くの の つかもしれません。ご までに。