[MySQL]使用Begin...End語句的一個坑


寫一個觸發器,執行單條語句是OK的。

想執行多條語句,嘗試在代碼中加入BEGIN END。但一加BEGIN END就報錯, 錯誤信息也很詭異,只說某一行出錯了,不符合Mysql的語句規范,提示信息就個''。

查了文檔,並沒有發現BEGIN END有什么特別要注意的地方。

反復查找,參考了這里:http://bbs.csdn.net/topics/390542425 13樓的回復。

說是沒有定義查詢界定符導致,導致編譯器將;識別為全部語句的結束,導致BEGIN 匹配不到END,於是報錯。

解決方案是,在語句前面增加 DELIMITER // (無分號)也就是需要定義分界符。

這樣改過之后,就可以運行了。

問題是,雖然他這么說之后,想想確實說得通,但MySQL的文檔里面並沒有提,示例代碼好像也是跑的好好的。略坑。

有空再仔細分析下文檔,看他到底怎么說的。

 


免責聲明!

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



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