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操作数组相关函数
Feb 03 PHP
PHPExcel读取Excel文件的实现代码
Dec 06 PHP
php实现httpclient类示例
Apr 08 PHP
为PHP5.4开启Zend OPCode缓存
Dec 26 PHP
PHP中实现Bloom Filter算法
Mar 30 PHP
分享PHP守护进程类
Dec 30 PHP
php实现的http请求封装示例
Nov 08 PHP
YII2框架中使用yii.js实现的post请求
Apr 09 PHP
CI框架(CodeIgniter)公共模型类定义与用法示例
Aug 10 PHP
Laravel 5.5官方推荐的Nginx配置学习教程
Oct 06 PHP
PHP文件操作实例总结【文件上传、下载、分页】
Dec 08 PHP
php7中停止php-fpm服务的方法详解
May 09 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单例模式实现(对象只被创建一次)
2012/12/05 PHP
PHP 观察者模式的实现代码
2013/05/10 PHP
输入值/表单提交参数过滤有效防止sql注入的方法
2013/12/25 PHP
用表格输出1-1000之间的数字实现代码(附特效)
2013/04/21 Javascript
关于jquery中全局函数each使用介绍
2013/12/10 Javascript
javascript模拟订火车票和退票示例
2014/04/24 Javascript
js动态修改整个页面样式达到换肤效果
2014/05/23 Javascript
JQuery 在线引用及测试引用是否成功
2014/06/24 Javascript
jQuery通过扩展实现抖动效果的方法
2015/03/11 Javascript
jquery popupDialog 使用 加载jsp页面的方法
2016/10/25 Javascript
详解vue2父组件传递props异步数据到子组件的问题
2017/06/29 Javascript
微信小程序tabBar用法实例详解
2017/12/04 Javascript
在vue项目中使用element-ui的Upload上传组件的示例
2018/02/08 Javascript
vuejs数据超出单行显示更多,点击展开剩余数据实例
2019/05/05 Javascript
Node 使用express-http-proxy 做api网关的实现
2020/10/15 Javascript
vue中watch的用法汇总
2020/12/28 Vue.js
python使用rabbitmq实现网络爬虫示例
2014/02/20 Python
python解析xml文件操作实例
2014/10/05 Python
python字典操作实例详解
2017/11/16 Python
安装python及pycharm的教程图解
2019/10/10 Python
Django框架中间件定义与使用方法案例分析
2019/11/28 Python
使用Python制作新型冠状病毒实时疫情图
2020/01/28 Python
详解Python的爬虫框架 Scrapy
2020/08/03 Python
CSS3文本换行word-wrap解决英文文本超过固定宽度不换行
2013/10/10 HTML / CSS
CSS3 函数技巧 用css 实现js实现的事情(clac Counters Tooltip)
2017/08/15 HTML / CSS
美国最受欢迎的度假租赁网站:VRBO
2016/08/02 全球购物
AHAVA美国官方网站:死海海泥护肤品牌
2016/10/18 全球购物
Guess美国官网:美国知名服装品牌
2019/04/08 全球购物
数据员岗位职责
2013/11/19 职场文书
初中化学教学反思
2014/01/23 职场文书
安全教育演讲稿
2014/05/09 职场文书
教师党员岗位承诺书
2014/05/29 职场文书
司考复习计划
2015/01/19 职场文书
搞笑结婚保证书
2015/05/08 职场文书
同学会感言
2015/07/30 职场文书
【海涛dota解说】DCG联赛第一周 LGD VS DH
2022/04/01 DOTA