2017-02-04 7 views
0

のトリガ値Iは、テーブルから作成されたビューがあります。代わりの仮想列

CREATE OR REPLACE VIEW employee_list AS 
    SELECT firstName || ' ' || lastName AS "employee" 
    FROM employees; 
END; 

をそして私は、このビューに値を挿入します。私は、トリガーの代わりに作成された:

CREATE OR REPLACE TRIGGER trigger_v_emp_list 
INSTEAD OF INSERT ON employee_list 
FOR EACH ROW 
BEGIN 
    dbms_output.put_line(:new.employee); 
END; 

しかし、私は、このトリガーをコンパイルしようとしているとき、私はエラーを取得する:

Error(3,24): PLS-00049: bad bind variable 'NEW.EMPLOYEE' 

はへの挿入のために、この値をトリガーで、この挿入された値を取得する可能性があります従業員のテーブル?もちろん、私はこの値を2つの別々の値に分割します。

+2

ビュー定義で二重引用符を削除してみてください。 –

+0

@GordonLinoffありがとう! :) – porgo

答えて

1

"employee"大文字と小文字を区別しました。 あなたが書きました:new.employeeそれは大文字を検索しようとしました。エイリアスでも同じことが起こります。

CREATE OR REPLACE VIEW employee_list AS 
    SELECT firstName || ' ' || lastName AS employee 
    FROM employees; 
END; 
関連する問題