表 1: 顧客
cust_no | cust_credbal | cred_status
表 2:customer_credittopup
cust_no | 取引金額
Table2
私は上記の2つのテーブルを持っています.to updateへの挿入後に更新トリガーを書きましたTable1
. したがって、 in の金額は、 inの新しい値 + inTable1
cust_credbal
を追加cust_credbal
した後に更新されます。更新後に if ステートメントを追加して、20 より大きいかどうかを確認するにはどうすればよいですか?Tabl1
trans_amount
Table2
cust_credbal
cred_status
このエラーを示すトリガー: 行 8 のエラー: PLS-00049: バインド変数 'NEW.CUST_CREDITBAL' が正しくありません
CREATE OR REPLACE TRIGGER after_insert_credittopup
AFTER INSERT ON customer_credittopup
FOR EACH ROW
DECLARE
credit number(11);
BEGIN
UPDATE customers
SET cust_creditbal=cust_creditbal +:new.trans_amount
WHERE cust_no=:new.cust_no;
SELECT Cust_creditbal INTO credit
FROM customers WHERE cust_no=:new.cust_no;
IF(:new.cust_creditbal>0) THEN
UPDATE customers
SET Cust_credstatus='Valid'
WHERE cust_no=:new.cust_no;
end if;
end;
/