mYSQL存储过程参数报错的问题?

作者站长头像
站长
· 阅读数 30

mYSQL存储过程的错误:存储过程如下:

create procedure mypo02(in DataName varchar(10))
  begin
  if DataName is null or DataName = "" then
      select * from ssd;
  else
      select * from ssd where ename like concat('%',DataName,'%');
  end if;
end;

报错:Procedure execution failed1054 - Unknown column '王小李' in 'field list'

只要传值进去就报字段不在列表中,当我把 DataName 改成int 整型的时候运行可以,当为字符串运行就报错。请教高手要这么处理?

回复
1个回答
avatar
test
2024-06-23

存储过程mypo02的定义没问题,既然题主碰到的事int和string的问题,不妨看看调用的地方是不是相关操作的类型不正确?

或者给出更详细的问题呢

回复
likes
适合作为回答的
  • 经过验证的有效解决办法
  • 自己的经验指引,对解决问题有帮助
  • 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
  • 询问内容细节或回复楼层
  • 与题目无关的内容
  • “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容