中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

mysql存儲過程報語法錯誤怎么辦

發布時間:2020-06-29 10:15:24 來源:億速云 閱讀:514 作者:清晨 欄目:編程語言

這篇文章主要介紹mysql存儲過程報語法錯誤怎么辦,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

存儲過程,輸入是課程編號,輸出是課程名稱。編寫的代碼如下:

create procedure course_id_name(in cid varchar(20))
begin
select name
from course
where id = cid;
end;

會出現如下報錯:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 5

錯誤原因:

這里只能猜測是數據庫的版本問題,出現這個錯誤的數據庫編譯的時候認為第五行where id = cid; 這句話的分號就代表了整個語句的結束,因此它就會感到奇怪,明明上面有個begin,怎么沒有end呢?所以就報錯了。

解決方法:

就只需要讓編譯器明白第五行的分號不代表語句的結束,一直到end以后語句才結束就可以了。做法也很簡單,使用delimiter命令暫時更換結束符就行了。代碼如下:

delimiter //  --將結束符換成//
create procedure course_id_name(in cid varchar(20))
begin
select name
from course
where id = cid;
end//
 
delimiter ;   --將結束符換回;

記得定義完成后一定要把結束符換回默認的分號 ; ,否則以后就一直要用 // 來結尾了,不過經過測試不會影響存儲過程的正常運行。

調用及結果如下:

call course_id_name('C01');

mysql存儲過程報語法錯誤怎么辦

以上是mysql存儲過程報語法錯誤怎么辦的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

青冈县| 衡东县| 丰台区| 蒲江县| 淮安市| 宝兴县| 尖扎县| 庆阳市| 东丰县| 高安市| 大同县| 巩留县| 宽城| 佛山市| 柘城县| 霍林郭勒市| 休宁县| 塔城市| 枞阳县| 高尔夫| 赤壁市| 大港区| 诸城市| 西乌珠穆沁旗| 夏河县| 房产| 通城县| 渝北区| 泾源县| 巴马| 灵台县| 邢台县| 阜平县| 肃宁县| 黔东| 西贡区| 安康市| 剑河县| 疏附县| 云阳县| 泰顺县|