php调用MySQL存储过程的方法集合(推荐)


Posted in PHP onJuly 03, 2013

类型一:调用带输入、输出类型参数的方法

$returnValue = '';
try {
 mysql_query ( "set @Return" );
 $spname = 'P__Test_GetInfo1';
 mysql_query ( "call $spname(@Return, '{$userId}', '{$pwd}')" ) or die ( "[$spname]Query failed:" . mysql_error () );
 $result_return = mysql_query ( "select @Return" );
 $row_return = mysql_fetch_row ( $result_return );
 $returnValue = $row_return [0];
} catch ( Exception $e ) {
 echo $e;
}
echo $returnValue; //输出来自存储过程中输出的变量

类型二:调用带多个输出类型和多个输入类型参数的方法
$userId = 0;
try{
    mysql_query("set @Message");
    mysql_query("set @Id");
    mysql_query("call P__Test_Login(@Message, @Id, '{$userId}', '{$pwd}')", $conn) or die("Query failed:".mysql_error());
    $result_mess = mysql_query("select @Message");
    $result_uid = mysql_query("select @Id");
    $row_mess = mysql_fetch_row($result_mess);
    $row_uid = mysql_fetch_row($result_uid);
    $Proc_Error = $row_mess[0];
    $uId = $row_uid[0];
}
catch( Exception $e )
{
   echo $e;
}
echo 'proc return message:'$Proc_Error.'<br/>'; //输出来自存储过程中输出的变量
echo 'User id:'.$uId; //获取用户id

类型三:调用带返回结果集的方法
try {
 $spname = 'P__Test_GetData';
 $query = mysql_query ( "call $spname()", $conn ) or die ( "[$spname]Query failed:".mysql_error() );
 while ( $row = mysql_fetch_array ( $query ) ) {
  echo $row ['ProvinceID'].'::'.$row ['ProvinceName']; //输出数据集
 }} catch ( Exception $e ) {
 echo $e;
}

类型四:调用带返回多个结果集的方法(目前只能通过mysqli来实现~~)
//PHP
$rows = array ();  
$db = new mysqli($server,$user,$psd,$dbname);  
if (mysqli_connect_errno()){  
    $this->message('Can not connect to MySQL server');  
}  
$db->query("SET NAMES UTF8");  
$db->query("SET @Message");
if($db->real_query("call P__Test_GetData2(@Message)")){  
    do{  
        if($result = $db->store_result()){  
            while ($row = $result->fetch_assoc()){  
                array_push($rows, $row);  
            }  
            $result->close();  
        }  
    }while($db->next_result());  
}  
$db->close(); 
print_r($rows);
//Procedure 
……
select * from T1 where ……
select * from T2 where ……
……
PHP 相关文章推荐
一篇不错的PHP基础学习笔记
Mar 18 PHP
一步一步学习PHP(2)――PHP类型
Feb 15 PHP
PHP获取文件绝对路径的代码(上一级目录)
May 29 PHP
遍历指定目录下的所有目录和文件的php代码
Nov 27 PHP
用Zend Studio+PHPnow+Zend Debugger搭建PHP服务器调试环境步骤
Jan 19 PHP
PHP连接MySQL的2种方法小结以及防止乱码
Mar 11 PHP
php求两个目录的相对路径示例(php获取相对路径)
Mar 27 PHP
[原创]CI(CodeIgniter)简单统计访问人数实现方法
Jan 19 PHP
YII视图整合kindeditor扩展的方法
Jul 13 PHP
常用PHP数组排序函数归纳
Aug 08 PHP
laravel 实现上传图片到本地和前台访问示例
Oct 21 PHP
关于Laravel参数验证的一些疑与惑
Nov 19 PHP
解决php使用异步调用获取数据时出现(错误c00ce56e导致此项操作无法完成)
Jul 03 #PHP
解决PHP mysql_query执行超时(Fatal error: Maximum execution time …)
Jul 03 #PHP
处理(php-cgi.exe - FastCGI 进程超过了配置的请求超时时限)的问题
Jul 03 #PHP
解析php5配置使用pdo
Jul 03 #PHP
基于PHP创建Cookie数组的详解
Jul 03 #PHP
PHP调用MsSQL Server 2012存储过程获取多结果集(包含output参数)的详解
Jul 03 #PHP
解决FastCGI 进程超过了配置的活动超时时限的问题
Jul 03 #PHP
You might like
在字符串指定位置插入一段字符串的php代码
2010/02/16 PHP
遭遇php的in_array低性能问题
2013/09/17 PHP
仿dedecms下拉分页样式修改的thinkphp分页类实例
2014/10/30 PHP
PHP中static关键字以及与self关键字的区别
2015/07/01 PHP
PHP实现的进度条效果详解
2016/05/03 PHP
PHP仿微信多图片预览上传实例代码
2016/09/13 PHP
PHP实现简单日历类编写
2020/08/28 PHP
比较全面的event对像在IE与FF中的区别 推荐
2009/09/21 Javascript
jQuery 自定义函数写法分享
2012/03/30 Javascript
iframe 上下滚动条如何默认在下方实现原理
2012/12/10 Javascript
javascript重写alert方法的实例代码
2013/03/29 Javascript
基于datagrid框架的查询
2013/04/08 Javascript
js基础知识(公有方法、私有方法、特权方法)
2015/11/06 Javascript
Bootstrap中CSS的使用方法
2016/02/17 Javascript
Angular使用过滤器uppercase/lowercase实现字母大小写转换功能示例
2018/03/27 Javascript
js与jQuery实现获取table中的数据并拼成json字符串操作示例
2018/07/12 jQuery
在微信小程序中使用图表的方法示例
2019/04/25 Javascript
JS数组属性去重并校验重复数据
2020/01/10 Javascript
js+css3实现炫酷时钟
2020/08/18 Javascript
Python 错误和异常代码详解
2018/01/29 Python
Python实现统计给定列表中指定数字出现次数的方法
2018/04/11 Python
Python3中的bytes和str类型详解
2019/05/02 Python
Python基于scipy实现信号滤波功能
2019/05/08 Python
python3在同一行内输入n个数并用列表保存的例子
2019/07/20 Python
python 设置xlabel,ylabel 坐标轴字体大小,字体类型
2019/07/23 Python
Django实现发送邮件找回密码功能
2019/08/12 Python
Python selenium爬取微博数据代码实例
2020/05/22 Python
django项目中使用云片网发送短信验证码的实现
2021/01/19 Python
CSS3教程:边框属性border的极致应用
2009/04/02 HTML / CSS
FLOS美国官网:意大利高级照明工艺的传奇
2018/08/07 全球购物
美国班级戒指、帽子和礼服、毕业产品、年鉴:Balfour
2018/11/01 全球购物
家庭贫困证明
2014/09/23 职场文书
房屋登记授权委托书范本
2014/10/09 职场文书
教师先进个人材料
2014/12/17 职场文书
出国导师推荐信
2015/03/25 职场文书
党支部综合考察意见
2015/06/01 职场文书