【发布时间】:2014-02-07 23:04:28
【问题描述】:
我正在尝试为大学作业制作一个简单的项目。在那,当我试图从 MySQL 中的存储过程中删除记录时,该删除语句正在删除所有记录。
代码如下:
DELIMITER $$
CREATE DEFINER=`root`@`localhost` PROCEDURE
`removebus`(in busnumber int,out message varchar(255))
BEGIN
delete from fare where busnumber = busnumber;
delete from bus where busnumber = busnumber;
set message = 'success';
else
set message = 'not found';
end if;
END
我正在像call removebus(1,@message);一样执行。
当我试图只从命令窗口执行删除语句时,它只删除一条记录,但是当我执行调用语句时,所有记录都从我的表中删除。补充一下,busnumber 是总线表的主键。我无法理解为什么。
【问题讨论】:
-
我认为缺少代码,您的 IF 语句在哪里??
标签: mysql delete-row