mysql觸發器new old詳解 mysql觸發器new old: www.2cto.com "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, www.2cto.com 而@new的值將會變成56。 觸發器的執行間隔:FOR EACH ROW子句通知觸發器每隔一行執行一次動作,而不是對整個表執行一次。 列值遞增: create table a( id int primary key auto_increment,##設置為自動遞增 name varchar(10) ); 設置初始值為1000 : ALTER TABLE tablename AUTO_INCREMENT=1000;