我試圖在我的主機mysqladmin頁面上執行以下代碼。MySQL語法錯誤
CREATE PROCEDURE `follow`(IN in_follower INT(11), IN in_followee VARCHAR(45))
BEGIN
INSERT INTO follower (follower_id, followee_id) VALUES (in_follower, (SELECT user_id FROM user WHERE username = in_followee));
END
我得到的錯誤是:
#1064 - 你在你的SQL語法錯誤;檢查與您的MySQL服務器版本對應的手冊,在第3行使用正確的語法「'''
爲什麼在這裏發生此錯誤?當我在MySQL Workbench中使用該代碼時,它運行良好。
你可能需要設置在中mysqladmin控制檯的備用'DELIMITER'。它是phpmyadmin還是別的?如何完成取決於客戶端。 MySQL命令行客戶端有一個命令'DELIMITER',phpmyadmin有一個輸入字段來設置,你的Web控制檯可能有不同的方法。 –
確實是phpmyadmin – RichardG
實際上,在這種情況下,您可以刪除'BEGIN'和'END',而不用擔心語句分隔符... – eggyal