php 调用sqlsrv 读取记录+返回参数 调用存储过程

一. sqlsrv连接数据库

<?php

[php]  view plain  copy
  1.     $serverName="ip, port";  
  2.     $connectionInfo = array("UID"=>"username""PWD"=>"password""Database"=>"db""CharacterSet"=>"utf-8");  
  3.     $conn = sqlsrv_connect($serverName$connectionInfo);  
  4.     if($conn){  
  5.         echo "Connection established.<br/><br/>";  
  6.         $server_info = sqlsrv_server_info($conn);  
  7.         if($server_info){  
  8.             foreach($server_info as $key => $value){  
  9.                 echo $key.":".$value."<br/>";  
  10.             }  
  11.         }else{  
  12.             die(print_r(sqlsrv_errors(), true));  
  13.         }  
  14.         echo "<br/>";  
  15.         //  
  16.         $client_info = sqlsrv_client_info($conn);  
  17.         if($client_info){  
  18.             foreach($client_info as $key=>$value){  
  19.                 echo $key.":".$value."<br/>";  
  20.             }  
  21.         }else{  
  22.             echo "Error in retrieving client info.<br/>";  
  23.         }  
  24.     }  
  25.     else {  
  26.         echo "Connection could not be established.\n";  
  27.         die(print_r(sqlsrv_errors(), true));  
  28.     }  
  29.     /* Close the connection. */  
  30.     sqlsrv_close($conn);  
  31. ?>  
二. 获取查询结果

[php]  view plain  copy
  1. <?php  
  2.     $serverName="ip, port";  
  3.     $connectionInfo = array("UID"=>"username""PWD"=>"password""Database"=>"db""CharacterSet"=>"utf-8");  
  4.     $conn = sqlsrv_connect($serverName$connectionInfo);  
  5.     if($conn === false){  
  6.         die(print_r(sqlsrv_errors(), true));  
  7.     }  
  8.     $sql = "select top 100 * from cti_agent;";  
  9.     $stmt = sqlsrv_query($conn$sql, null);  
  10.     if($stmt === false){  
  11.         die(print_r(sqlsrv_errors(), true));  
  12.     }  
  13.     while($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)){  
  14.         print_r($row);  
  15.         print_r($row["agtid"].", ".$row["account"].", ".$row["agtname"].", ".$row["telnum"].", ".$row["pwd"].", ".$row["isMaster"]."<br/>");  
  16.     }  
  17. ?>  
三.调用存储过程(无参)

[php]  view plain  copy
  1. <?php  
  2.     $serverName="ip, port";  
  3.     $connectionInfo = array("UID"=>"username""PWD"=>"password""Database"=>"db""CharacterSet"=>"utf-8");  
  4.     $conn = sqlsrv_connect($serverName$connectionInfo);  
  5.     if($conn === false){  
  6.         die(print_r(sqlsrv_errors(), true));  
  7.     }  
  8.     $sp = "{call web_agent_list}";  
  9.     $stmt = sqlsrv_query($conn$sp, null);  
  10.     if($stmt === false){  
  11.         die(print_r(sqlsrv_errors(), true));  
  12.     }  
  13.     while($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)){  
  14.         print_r($row);  
  15.         print_r($row["agtid"].", ".$row["account"].", ".$row["agtname"].", ".$row["telnum"].", ".$row["pwd"].", ".$row["isMaster"]."<br/>");  
  16.     }  
  17. ?>  
四.调用存储过程(入参)

[php]  view plain  copy
  1. <?php  
  2.     $serverName="ip, port";  
  3.     $connectionInfo = array("UID"=>"username""PWD"=>"password""Database"=>"db""CharacterSet"=>"utf-8");  
  4.     $conn = sqlsrv_connect($serverName$connectionInfo);  
  5.     if($conn === false){  
  6.         die(print_r(sqlsrv_errors(), true));  
  7.     }  
  8.     $tid = 1;  
  9.     $params = array(  
  10.         array($tid, SQLSRV_PARAM_IN)  
  11.     );  
  12.     $sp = "{call web_huifang_export1(?)}";  
  13.     $stmt = sqlsrv_query($conn$sp$params);  
  14.     if($stmt === false){  
  15.         die(print_r(sqlsrv_errors(), true));  
  16.     }  
  17.     while($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)){  
  18.         print_r($row);  
  19.         print_r($row["agtid"].", ".$row["account"].", ".$row["agtname"].", ".$row["telnum"].", ".$row["pwd"].", ".$row["isMaster"]."<br/>");  
  20.     }  
  21. ?>  
五.调用存储过程(出参)

[php]  view plain  copy
  1. <?php  
  2.     $serverName="ip, port";  
  3.     $connectionInfo = array("UID"=>"username""PWD"=>"password""Database"=>"db""CharacterSet"=>"utf-8");  
  4.     $conn = sqlsrv_connect($serverName$connectionInfo);  
  5.     if($conn === false){  
  6.         die(print_r(sqlsrv_errors(), true));  
  7.     }  
  8.     //prepare params  
  9.     $tid=1;  
  10.     $ttid=3;  
  11.     $kind=0;    //输出参数  
  12.     $params = array(  
  13.         array($tid, SQLSRV_PARAM_IN),  
  14.         array($ttid, SQLSRV_PARAM_IN),  
  15.         array($kind, SQLSRV_PARAM_OUT)  
  16.     );  
  17.     //stored procedure  
  18.     $sp = "{call web_tasktel_info(?,?,?)}";  
  19.     $stmt = sqlsrv_query($conn$sp$params);  
  20.     if(!stmt){  
  21.         die(print_r(sqlsrv_errors(), true));  
  22.     }  
  23.     while($row=sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)){  
  24.         $result = $row;  
  25.     }  
  26.     echo "结果集:";  
  27.     print_r($result);  
  28.     echo "<br/><br/>";  
  29.     sqlsrv_next_result($stmt);  
  30.     echo "输出参数:";  
  31.     print_r($kind);  
  32.   
  33.     /* Release resources */  
  34.     sqlsrv_free_stmt($stmt);  
  35.     /* Close the connection. */  
  36.     sqlsrv_close($conn);  
  37. ?>  
六.调用存储过程(多结果集)

[php]  view plain  copy
  1. <?php  
  2.     $serverName="ip, port";  
  3.     $connectionInfo = array("UID"=>"username""PWD"=>"password""Database"=>"db""CharacterSet"=>"utf-8");  
  4.     $conn = sqlsrv_connect($serverName$connectionInfo);  
  5.     if($conn === false){  
  6.         die(print_r(sqlsrv_errors(), true));  
  7.     }  
  8.     //stored procedure  
  9.     $sp = "{call xp_results_test()}";  
  10.     $stmt = sqlsrv_query($conn$sp, null);  
  11.     if(!stmt){  
  12.         die(print_r(sqlsrv_errors(), true));  
  13.     }  
  14.     //遍历结果集  
  15.     echo "第一个结果集:<br/>";  
  16.     while($row=sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)){  
  17.         echo $row["account"]."<br/>";  
  18.     }  
  19.     echo "<br/>第二个结果集:<br/>";  
  20.     sqlsrv_next_result($stmt);  
  21.     while($row1=sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)){  
  22.         echo $row1["account"]."<br/>";  
  23.     }  
  24.     echo "<br/>第三个结果集:<br/>";  
  25.     sqlsrv_next_result($stmt);  
  26.     while($row1=sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)){  
  27.         echo $row1["account"]."<br/>";  
  28.     }  
  29.     /* Release resources */  
  30.     sqlsrv_free_stmt($stmt);  
  31.     /* Close the connection. */  
  32.     sqlsrv_close($conn);  
  33. ?>  
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值