[英]error when running the stored procedure in mysql
我試圖在mysql中執行存儲過程,下面是命令:
create procedure insertIntoEMP (IN name1 VARCHAR (50),IN sal1 INT)
BEGIN
insert into student values (name1, sal1)
END;
但是我收到了一個錯誤。 我在mysql客戶端運行上面的命令。 請讓我知道我哪里出錯了。
錯誤1064(42000):您的SQL語法有錯誤; 檢查與MySQL服務器版本對應的手冊,以便在第1行的“END”附近使用正確的語法
添加;
insert
后:
create procedure insertIntoEMP (IN name1 VARCHAR (50),IN sal1 INT)
BEGIN
insert into student(name, sal) values (name1, sal1) ;
END;
將列列表添加到INSERT INTO tab(col_list) VALUES ...
是一個很好的做法。
您可能需要根據客戶端定義分隔符 :
如果使用mysql客戶端程序定義包含分號字符的存儲程序,則會出現問題。 默認情況下,mysql本身將分號識別為語句分隔符,因此必須臨時重新定義分隔符以使mysql將整個存儲的程序定義傳遞給服務器。
DELIMITER $$
create procedure insertIntoEMP (IN name1 VARCHAR (50),IN sal1 INT)
BEGIN
insert into student(name, sal) values (name1, sal1) ;
END$$
DELIMITER ;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.