1
我試圖創建我的觸發器,但它要求綁定每次。當我在出現的窗口上單擊應用時,它會以我想要的方式工作...但是,它會記錄錯誤...Oracle PL/SQL觸發器請求綁定
我的觸發器檢查客戶端是否處於活動狀態,並且不允許的變化,如果它被發現是積極的......
CREATE Trigger Client_Activity
BEFORE Insert or Update or Delete ON Client
FOR EACH ROW
DECLARE
VAR_AC char(2);
BEGIN
IF UPDATING THEN
SELECT Activity INTO VAR_AC
FROM Client_Additionals
WHERE Activity = :Old.Activity;
IF Activity = 'AC'
THEN Raise_Application_Error(-20999, 'active')
END IF;
END;
/
Oracle版本12使用的SQLDeveloper
認沽'SET DEFONE OFF;''之前CREATE TRIGGER ....'語句,然後按F5'運行script' – krokodilko
@a_horse_with_no_name - 與代碼綁定變量時的情況相同。不同的前端做不同。 SQL \ * Plus只會說*綁定變量「OLD」未聲明*。 SQL Developer將打開一個標有「Enter binds」的彈出窗口,等待「Old」的值。我相信Toad會做類似於SQL Developer的事情。 – mathguy
@krokodilko - 我認爲這不會解決問題......爲什麼呢?這個問題是一個(意外的,或者說是錯誤的)綁定變量,而不是一個替代變量。 – mathguy