SQL Server ' var _ category _ name ' 附近 有 语法 错误 , 必须 是 VARIABLE

7gyucuyw  于 2022-11-21  发布在  Go
关注(0)|答案(2)|浏览(190)

我试图编写一个脚本来创建和调用名为spInsertNewCategory的存储过程,但在以下代码中遇到此错误:

CREATE PROCEDURE spInsertCategory(category_name VARCHAR(50))
BEGIN
INSERT INTO Categories
VALUES (@CategoryName);
END

enter image description here
任何帮助都将不胜感激。
在50上也得到一个错误,说它期待“(”或SELECT。这是我第一次完全迷失在某件事上。我做错了什么?
代码应该是一个没有返回值的输入参数,我只是不知道该写什么。

vnjpjtjt

vnjpjtjt1#

您使用的是MySQL的语法,在SQL Server中其:

CREATE PROCEDURE spInsertCategory @CategoryName VARCHAR(50)
AS
BEGIN
INSERT INTO Categories
VALUES (@CategoryName);
END
uelo1irk

uelo1irk2#

在执行语句时,在语句之前添加DELIMITER //

DELIMITER //
CREATE PROCEDURE spInsertCategory(IN category_name VARCHAR(50))
BEGIN
INSERT INTO Categories
VALUES (@CategoryName);
END//
DELIMITER ;

如果以上不起作用,请尝试以下步骤!
转到MySQL中的Routine选项卡,单击Add Routin并按照以下步骤操作

相关问题