寫一個觸發器,執行單條語句是OK的。
想執行多條語句,嘗試在代碼中加入BEGIN END。但一加BEGIN END就報錯, 錯誤信息也很詭異,只說某一行出錯了,不符合Mysql的語句規范,提示信息就個''。
查了文檔,並沒有發現BEGIN END有什么特別要注意的地方。
反復查找,參考了這里:http://bbs.csdn.net/topics/390542425 13樓的回復。
說是沒有定義查詢界定符導致,導致編譯器將;識別為全部語句的結束,導致BEGIN 匹配不到END,於是報錯。
解決方案是,在語句前面增加 DELIMITER // (無分號)也就是需要定義分界符。
這樣改過之后,就可以運行了。
問題是,雖然他這么說之后,想想確實說得通,但MySQL的文檔里面並沒有提,示例代碼好像也是跑的好好的。略坑。
有空再仔細分析下文檔,看他到底怎么說的。