后端开发|php教程
uname,sql,quot,ThinkPHP,str
后端开发-php教程
ThinkPHP 3.0调用存储过程问题
PHP code
在线培训网站源码,vscode 缩小,ubuntu操作系统教程,如何用应用程序启动tomcat,sqlite.jar,网页设计输出,在家需要服务器吗,discuz支付宝支付插件,纯ui框架 前端,大麦抢票爬虫,php图书馆管理系统,周末seo,门户 网站 asp,关于菜谱的网页模板,竞价单页模板,jq跟随页面滚动导航栏,宾馆房间管理系统,小程序 下载线上代码lzw
$model = D(Demo); $str = aaa; $sql = "SET @uname = $str; CALL new_pr(@uname);"; $data = $model -> query($sql, true); echo $model -> getLastSql();
输出
SET @uname = ‘aaa’; CALL new_pr(@uname);
放到查询编辑器里面可以执行
仿好商城源码下载,ubuntu使用技巧啊,tomcat是小老虎还是小猫,爬虫脱裤,php多线程编程教程学习,seo小经验lzw
求解
0a办公软件源码,ubuntu16简介,tomcat日志打印了两遍,美团爬虫 python,选择单选按钮后跳转到php文件,seo 效果 评估lzw
——解决方案——————–
可能是定界符的问题,试试下面的:
PHP code
$sql = delimiter //;$sql .= "SET @uname = $str;"$sql .= "CALL new_pr(@uname)//";$sql .=delimiter ;;
------解决方案--------------------
你说的情况我遇到过!在thinkphp中调用存储我成我是这样解决的:在链接数据库时多加了个参数就解决了:
define(CLIENT_MULTI_RESULTS,131072);
$conn = mysql_connect(127.0.0.1, oot,123456,1,CLIENT_MULTI_RESULTS) or die(连接失败);
你可以试一下!
------解决方案--------------------
对于 #13 的代码:
第一段和第三段除没有对 $str 赋值外,没有什么不同
第三段不行的原因,应该是 $str 没赋值
第一段可以而第二段不可以,则表示
ThinkPHP 3.0 依然没有绕过 php 除声明存储过程外,不能不能在一个 query 中执行一条以上 sql 指令的安全约定
你需要分别执行那两条 sql 指令