我有一個這樣的觸發器:爲什麼觸發器的一部分在其餘部分之前被執行?
DECLARE v1 VARCHAR(4);
and so on declaration
...
IF LENGTH(new.ID) < 11 OR new.ID= '' THEN
RAISERROR 23004 'Too short!';
ENDIF;
SET v1 = substring(new.ID,1,3);
and more action on v1...
我想說的是,在set
部分正在if
之前執行,我不知道爲什麼。你有一個想法如何解決它?
在此先感謝
你確定觸發器沒有被執行兩次嗎? – Bohemian