前几天弄php调用mssql存储过程,搞了许久,网上资料也少之又少(特别是基于adodb的)。
那在这我就举个基于adodb调用mssql存储过程的例子吧,希望对人有所帮助。
/*
test out params - works in php 4.2.3 and 4.3.3 and 4.3.8 but not 4.3.0:
create procedure at_date_interval
@days integer,
@start varchar(20) out,
@end varchar(20) out
as
begin
set @start = convert(varchar(20), getdate(), 101)
set @end =convert(varchar(20), dateadd(day, @days, getdate()), 101 )
end
go
*/
$db->debug=1;
$stmt = $db->preparesp('at_date_interval');
$days = 10;
$begin_date = '';
$end_date = '';
$db->inparameter($stmt,$days,'days', 4, sqlint4); //这里97xxoo是in参数
$db->outparameter($stmt,$begin_date,'start', 20, sqlvarchar ); //这是存储过程返 回值,可直接访问$begin_date所得到。
$db->outparameter($stmt,$end_date,'end', 20, sqlvarchar ); //同上
$db->execute($stmt);
echo $begin_date;
echo $end_date;
这样就OK了,这简单的例子相信都能看得懂,其他的原理也是相同的。
在这里还要注意的是:$begin_date ,$end_date 一样要先赋个空值,否则结果取不到值。这就是害我搞了N久的原因了。
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号