2013-03-23 2 views
2

Я создал триггер, как показано ниже. Но это показывает мне ошибку.Ошибка при создании триггеров

2/30 PLS-00103: Encountered the symbol "=" when expecting one of the following: 
      := ; not null default character 

Может ли кто-нибудь помочь мне в решении этого вопроса? Заранее спасибо

CREATE OR REPLACE TRIGGER ADRAKLIVE.TRG_HELPDESK 
AFTER UPDATE 
OF STATUS 
ON ADRAKLIVE.TBL_SERVICEREPORT 
REFERENCING NEW AS NEW OLD AS OLD 
FOR EACH ROW 
BEGIN 
    declare ts varchar2(10) = :'YES'; 
UPDATE tbl_ithelpdesk 
     SET it_closed =: ts 
    WHERE call_no = :NEW.call_no; 
END; 
+0

Использование переменного ц, кажется, плохая практика здесь. Просто установите it_closed = 'YES' –

ответ

2

триггера неверен:

CREATE OR REPLACE TRIGGER TRG_HELPDESK 
AFTER UPDATE 
OF STATUS 
ON TBL_SERVICEREPORT 
REFERENCING NEW AS NEW OLD AS OLD 
FOR EACH ROW 
declare 
    ts varchar2(10) := 'YES'; 
BEGIN 
UPDATE tbl_ithelpdesk 
     SET it_closed = ts 
    WHERE call_no = :NEW.call_no; 
END; 
/
+0

Большое вам спасибо. Это сработало. большое спасибо – Shanna

1

Изменить ваш триггер:

CREATE OR REPLACE TRIGGER ADRAKLIVE.TRG_HELPDESK 
AFTER UPDATE 
OF STATUS 
ON ADRAKLIVE.TBL_SERVICEREPORT 
REFERENCING NEW AS NEW OLD AS OLD 
FOR EACH ROW 
DECLARE 
    ts varchar2(10); 
BEGIN 
ts := 'YES'; 
UPDATE tbl_ithelpdesk 
     SET it_closed =: ts 
    WHERE call_no = :NEW.call_no; 
END; 
+0

Я получаю эту ошибкуPLS-00801: внутренняя ошибка [ph2csql_strdef_to_diana: bind] 5/9 PL/SQL: ORA-06544: PL/SQL: внутренняя ошибка, аргументы: [ph2csql_strdef_to_diana: bind], [ ], [], [], [], [], [], [] 5/2 PL/SQL: заявление SQL игнорируется – Shanna

+0

Можете ли вы помочь мне, где я ошибаюсь – Shanna

Смежные вопросы