【发布时间】:2022-07-30 22:02:22
【问题描述】:
我试图在存储过程中同时插入和更新查询,但出现语法错误:
#1064 - 您的 SQL 语法有错误;检查与您的 MariaDB 服务器版本相对应的手册,以在第 1 行的 '@product_id int(11), IN @ProductCode varchar(255), IN @ProductName varchar (2...' 附近使用正确的语法
这是我的查询:
DELIMITER //
CREATE PROCEDURE UpdateProductList(IN @product_id int(11), IN @ProductCode varchar(255), IN @ProductName varchar (255), IN @PiecesInBox varchar (255), IN @Price varchar (255))
BEGIN
IF @product_id = 0
INSERT INTO products(ProductCode, ProductName, PiecesInBox, Price) VALUES(@ProductCode, @ProductName, @PiecesInBox, @Price);
ELSE
UPDATE products SET ProductCode = @ProductCode, ProductName = @ProductName, PiecesInBox = @PiecesInBox, Price = @Price WHERE product_id = @product_id;
END IF
END //
DELIMITER ;
【问题讨论】:
标签: mysql sql stored-procedures mariadb