我有一个看起来像这样的mySql存储过程 -
delimiter | create procedure GetEmployeeById(in ID varchar(45)) begin select id, firstName, lastName, phone, address1, address2, city, state, zip, username, password, emptypeid from myschema.tblemployees t where t.id=ID limit 1; end | delimiter;
如果我没有限制1,它总是返回表中的所有行 - 每个记录的id值设置为ID参数.为什么我不能只使用id = ID的地方,为什么我这样做会返回所有记录?我使用限制1的含义是什么?为什么我在星期六晚上编程?
因为,它将t.id与自身进行比较,这将永远是真实的.调用你的形式参数别的东西.