【发布时间】:2019-04-08 14:32:02
【问题描述】:
我的存储过程在语法和逻辑上都有问题。在 sqlfiddle.com 上尝试时出现以下错误。
我也不确定逻辑是否正确。无论如何我可以通过输入 ID 进行检查,并且查询将返回一个表,其中包含该 ID 的行已被删除?
创建一个名为 delete_id 的过程,用于删除 ID 所在的行
CREATE PROCEDURE DELETE_ID (ID_INPUT IN INT)
AS
BEGIN
DELETE FROM TABLE ALBUM WHERE ID=ID_INPUT;
END;
预期结果:输入一个 Id,SQL 将删除包含该 ID 的行
实际结果:
您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 3 行的“TABLE ALBUM WHERE ID=ID_INPUT”附近使用正确的语法
【问题讨论】:
-
去掉
table这个词。它不是语法的一部分。 -
HI Gordon,即使我删除了单词表。它仍然显示错误:您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的“IN INT) AS BEGIN DELETE FROM WHERE ID=ID_INPUT”附近使用正确的语法
-
我不是 mysql 专家,但看来您必须将参数列表写为
(IN id_input INT)