所以我试图根据我在网上找到的代码创建一个存储过程,这是代码:
CREATE PROCEDURE [dbo].[Customers_CRUD]
@Action VARCHAR(10)
AS
BEGIN
SET NOCOUNT ON;
--INSERT
IF @Action = 'INSERT'
BEGIN
INSERT INTO Table
VALUES (a, b)
END
--UPDATE
IF @Action = 'UPDATE'
BEGIN
UPDATE table
SET Name = @Name, Country = @Country
WHERE CustomerId = @CustomerId
END
--DELETE
IF @Action = 'DELETE'
BEGIN
DELETE FROM Table
WHERE CustomerId = @CustomerId
END
END
使用此数据库:
**friend**-->
Content:user_id,friend_id;
**user**-->
Content:user_id,email,password;
**user_extra**-->
Content:user_id,name,surname,birth_date,country_of_birth,user_name;
现在我在第1行遇到错误:
"意外的角色。(靠近[]",
"意外的角色。(靠近[]"
并且第2行出错:
"无法识别的数据类型。(近))"
现在我检查了我的代码并且找不到错误但我不知道为什么我一直得到这些错误可以有人关心解释,新的mysql和btw我在phpmyadmin sql部分使用它。
答案 0 :(得分:0)
CREATE PROCEDURE SP_Name(IN Action VARCHAR(10))
BEGIN
SET NOCOUNT ON ;
--INSERT
IF (@Action = ‘INSERT’) THEN
BEGIN
INSERT INTO Table
VALUES (a, b)
END
END IF ;
--UPDATE
IF( @Action = ‘UPDATE’) THEN
BEGIN
UPDATE table
SET Name = @Name, Country = @Country
WHERE CustomerId = @CustomerId
END
END IF ;
--DELETE
IF (@Action = ‘DELETE’) THEN
BEGIN
DELETE FROM Table
WHERE CustomerId = @CustomerId
END
END IF ;
END
我认为这对你有用 了解如何创建过程语法here以及如何在mysql here中使用IF语句语法,你可能也想检查如何声明变量,因为这段代码应该没问题,但NONCOUNT变量未定义,请阅读声明变量here