mysql select where疑问
享耳
享耳 2019-06-09 22:36:33
0
0
1313

请教各位前辈一个问题,有一个表,表中有个字段sfz,字符型定长18位,我在存储过程中用游标的方式把这个字段赋值给一个变量vsfz,也是字符型定长18位,我写了一条查询语句:select bj from kq201905 where sfz=vsfz;,能够正确查询。因为我要查询多个表,表名需要用变量循环赋值,所以使用prepare语句拼接,

set @vsk=concat('select bj from ',vkn,' where sfz=',vsfz,';');

prepare stmt from @vsk;

execute stmt;

deallocate prepare stmt;

执行后发现查询结果是错误的。我测试了与表名变量无关,现在怀疑就是where子句的问题,哪位知道是什么原因请告诉我,谢谢!

享耳
享耳

全部回复(0)
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板