SQL存储过程删除表中的所有行

0 mysql stored-procedures

我试图在MySQL中使用存储过程删除单行,但存储过程正在删除所有行.存储过程是:

CREATE DEFINER=`sherattd`@`%` PROCEDURE `deleteFilm`(in ID int)
BEGIN
    delete from films where id=ID;
END
Run Code Online (Sandbox Code Playgroud)

我想删除的表有标题:

create table films (
   id int(8),
   title varchar(100),
   year int(8),
   director varchar(100),
   stars varchar(100),
   review text);
Run Code Online (Sandbox Code Playgroud)

谢谢

jue*_*n d 6

因为您使用与列名相同的参数作为参数.它不区分大小写.

where id=id
Run Code Online (Sandbox Code Playgroud)

总是如此.选择其他参数名称!