PHP mysql_query() 执行存储过程报错喽

MiniMilkFish 2016-02-24 04:12:15
第一种方式:
$data = mysql_query("CALL DB.Query('11',‘S’)");
if(!$data){
dump(mysql_error());
}
这种方式查询正常,没问题!

第二种方式:
$data = mysql_query("SET @A = '11',@B='S'; CALL DB.Query(@A,@B);");
if(!$data){
dump(mysql_error());
}
这样就报错了
"You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CALL bi.gm_queryRoleLoginLogOutLog(@A,@B); ' at line 1"

就想知道啥原因,麻烦啦
...全文
117 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
MiniMilkFish 2016-02-24
  • 打赏
  • 举报
回复
感谢版主
xuzuning 2016-02-24
  • 打赏
  • 举报
回复
mysql_query 一次只能执行一条指令 请改用 mysqli_multi_query
MiniMilkFish 2016-02-24
  • 打赏
  • 举报
回复
@tata8181 大哥 在调用存储过程写SQL的时候这种写法是没问题的
tata8188 2016-02-24
  • 打赏
  • 举报
回复
SET @A = '11',@B='S';这个是存储过程里的写法吧, mysql_query里面你就写单纯的SQL语句

4,251

社区成员

发帖
与我相关
我的任务
社区描述
国内外优秀PHP框架讨论学习
社区管理员
  • Framework
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧