gpt4 book ai didi

mysql - 在 sql 中创建存储过程时,我不断收到 "unexpected character"和 "unrecognized data type"错误

转载 作者:行者123 更新时间:2023-11-29 18:20:14 27 4
gpt4 key购买 nike

所以我尝试根据我在网上找到的代码创建一个存储过程,这是代码:

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 行不断收到错误:

"Unexpected character.(near[)",
"Unexpected character.(near [)"

第 2 行出现错误:

"Unrecognized data type.(near))"

现在我检查了我的代码,找不到错误,但我不知道为什么我不断收到这些错误,有人可以解释一下,mysql新手,顺便说一句,我在 phpmyadmin sql 部分使用了这个。

最佳答案

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中使用IF语句语法here并且您可能还想检查如何声明变量,因为此代码应该没问题,但未定义 NONCOUNT 变量,请阅读有关声明变量的信息 here

关于mysql - 在 sql 中创建存储过程时,我不断收到 "unexpected character"和 "unrecognized data type"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46653173/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com