无法弄清楚存储过程,END处的错误

Ahm*_*nas 1 mysql stored-procedures

我希望你能帮帮我...

我确实知道一些SQL,但我是mySQL的新手...而且这个简单的查询我无法弄清楚它有什么问题:

CREATE PROCEDURE inserttoscrapbookSD
(owner1 VARCHAR(50),
poster1 VARCHAR(50),
Scrap1 VARCHAR(50),

)
BEGIN

INSERT INTO scrapbook (Owner)

VALUES(owner1)

END
Run Code Online (Sandbox Code Playgroud)

我知道有很多变量被传递,但目前只使用一个变量,因为如果它适用于一个变量,它将适用于所有变量.我想有和没有一个分号;在年底()ENDVALUES(owner1),但没有运气.它说:

#1064 - 您的SQL语法有错误; 查看与您的MySQL服务器版本对应的手册,以便在''附近使用正确的语法BEGIN INSERT INTO剪贴簿(所有者)VALUES(owner1)END'在第6行

Boh*_*ian 6

您的问题是您需要在定义存储过程时更改分隔符,这允许您;在存储的过程代码中使用分号而不完成create命令.

试试这个:

delimiter //

CREATE PROCEDURE inserttoscrapbookSD (
    owner1 VARCHAR(50),
    poster1 VARCHAR(50),
    Scrap1 VARCHAR(50)
)
BEGIN

INSERT INTO scrapbook (Owner)

VALUES(owner1);

END
//

delimiter ;
Run Code Online (Sandbox Code Playgroud)