今天下午在做觸發器,以前對這方面沒怎么注意過,今天做起來確實有點麻煩。
現在就教大家一種比較簡單的方法做觸發器。
我用的數據庫是mysql的,瀏覽工具是mysql-front。
用mysql-front打開自己想要建觸發器的表。
選擇新建trigger就會彈出
填入相關內容,名稱test。單選按鈕看需求而定的。
在statement中填入:
set new.name="tom";
這樣就建立了一個很簡單的觸發器了,其實在這里面可以寫多個處理語句。
特別注意的是當你的處理語句是操作多個中方法的時候,請把你的sql語句防御begin……end之中。
點擊確定。
一個簡單的觸發器就成功了。運行一下………………出錯了
彈出
這是怎么回事?
我將其歸納為mysql-front的錯誤,
解決辦法。
找到表中的觸發器(這里需要在表上按F5刷新一下)
右鍵點擊NreTrigger,然后再是上面的“源代碼”選項
將其復制到文本文件中:將
“root@localhost@%”修改為
“root@localhost”
如:
CREATE
DEFINER= root@localhost TRIGGER `lucene`.`NewTrigger` BEFORE INSERT ON `lucene`.`person`
刪除剛建立的觸發器
然后再sql編輯器中將上面的sql語句復制進去,運行。
再進行測試看看。成功了。
FOR EACH ROW set new.name="tom";
-------------------------------------------------------------------------
本來上面有圖片的,可是由于自己的疏忽圖片不能顯示。實在對不起啦。
實在對不起大家了, 不過只要大家記住錯誤所在也就好了。