【php source code】:
复制代码 代码如下:
$dbh = new pdo(‘sqlsrv:rver=连接地址;databa=数据库名’, 用户名, 密码);
try {
$procname = “p_test_getmixdata”;
$stmt = $dbh->prepare(“exec关于牛的故事 $procname ?, ?, ?”);
$nreturnvalue = 0;
$strreturnvalue = “”;
$strarchvalue = “abandonship”;
$stmt->bindparam(1, $nreturnvalue, pdo::param_int | pdo::param_input_output, pdo::sqlsrv_param_out_default_size);
$stmt->bindpa前台接待礼仪ram(2, $strreturnvalue, pdo::param_str | pdo::param_input_output, 10);
$stmt->bindpa不胜惶恐ram(3, $strarchvalue , pdo::param_str);
$stmt->execute();
//获取第一个结果集.
$rowt_1 = $stmt->fetch(pdo::fetch_assoc);
print_r($rowt_1);
echo ‘<br><br>’;
//获取第二个结果集.
$stmt->nextrowt();
$rowt_2 = $stmt->fetch();
print_r($rowt_2);
echo ‘<br><br>’;
$stmt->nextrowt();
// 获取两个输出类型的参数
echo $nret英雄联盟亚洲对抗赛urnvalue.'<br><br>’;
echo $strreturnvalue;
} catch (exception $e) {
echo $e->getmessage();
}
【sql procedure】:
复制代码 代码如下:
/**
*用于测试pdo调用mssqlrver2012存储过程获取复合结果集demo
*code createby abandonship 2012.10.11
**/
create procedure [dbo].[p_test_getmixdata](
@message_1 tinyint output,
@messgae_2 varchar(10) output,
@archvalue varchar(50)
) as
t nocount on
t @message_1 = 123
t @似的造句messgae_2 = ‘hi,there!this is abandonship!’
lect * from _t1 where col1 like ‘%’+@archvalue+’%’
lect * from _t2 where col1 like ‘%’+@archvalue+’%’
t nocount off
【一些要注意的问题】:当bindparam中存在需要输出类型的参数时,必须包含长度($length)。
【备注】:$length: an optional (integer) length of the data type. you can specify pdo::sqlsrv_param_out_default_size to indicate the default size when using pdo::param_int or pdo::param_bool in $data_type.
本文发布于:2023-04-06 09:56:04,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/a42b329f18cda0b7e406026b4131e7ca.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:PHP调用MsSQL Server 2012存储过程获取多结果集(包含output参数)的详解.doc
本文 PDF 下载地址:PHP调用MsSQL Server 2012存储过程获取多结果集(包含output参数)的详解.pdf
留言与评论(共有 0 条评论) |