源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

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

  • 时间:2022-02-25 18:52 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:php调用MySQL存储过程的方法集合(推荐)
[b]类型一:调用带输入、输出类型参数的方法 [/b]
[u]复制代码[/u] 代码如下:
$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; //输出来自存储过程中输出的变量
[b]类型二:调用带多个输出类型和多个输入类型参数的方法 [/b]
[u]复制代码[/u] 代码如下:
$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
[b]类型三:调用带返回结果集的方法 [/b]
[u]复制代码[/u] 代码如下:
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; }
[b]类型四:调用带返回多个结果集的方法(目前只能通过mysqli来实现~~) [/b]
[u]复制代码[/u] 代码如下:
//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 …… ……
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部