mysql觸發器new和old


下面為您介紹mysql觸發器new old的相關知識,供您參考學習,如果您在mysql觸發器方面遇到過類似的問題,不妨一看,相信對您會有所幫助。

mysql觸發器new old:

"NEW . column_name"或者"OLD . column_name".這樣在技術上處理(NEW | OLD . column_name)新和舊

的列名屬於創建了過渡變量("transition variables")。

對於INSERT語句,只有NEW是合法的;對於DELETE語句,只有OLD才合法;而UPDATE語句可以在和NEW以及

OLD同時使用。下面是一個UPDATE中同時使用NEW和OLD的例子。


CREATE TRIGGER tr1  
BEFORE UPDATE ON t22   
FOR EACH ROW   
BEGIN   
SET @old = OLD.s1;   
SET @new = NEW.s1;   
END; 

現在如果t21表中的s1列的值是55,那么執行了"UPDATE t21 SET s1 = s1 + 1"之后@old的值會變成55,

而@new的值將會變成56。

觸發器的執行間隔:FOR EACH ROW子句通知觸發器每隔一行執行一次動作,而不是對整個表執行一次。

列值遞增:


create table a(  
id int primary key auto_increment,##設置為自動遞增  
name varchar(10)  
); 

設置初始值為1000 :
ALTER   TABLE   tablename   AUTO_INCREMENT=1000;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM