php调用mssql存储过程。

由于某原因,需要用php连接mssql,又由于某些原因需要调用mssql的存储过程(观众:靠!哪来的这么多原因)。

这里给出实现方法,注释就不多写了,详见php参考手册

sql server存储过程

CREATE PROCEDURE ProcTest @id int@name varchar(30) output 
AS
select @name=username from mm_user where id=@id
select * from mm_user


php实现代码:

<?php
    $userId 
= 2;    // test parameter
    $userName;        // test return value

    $link 
= mssql_connect("192.168.1.38""sa""sa123456a") or die("Can't connect sql server");
    mssql_select_db(
"mm_db", $link) or die("Select database failure");

    $stmt 
= mssql_init("ProcTest", $link) or die("initialize stored procedure failure");
    mssql_bind($stmt, 
"@id", $userId, SQLINT4);
    mssql_bind($stmt, 
"@name", $userName, SQLVARCHAR, true);
    $rs 
= mssql_execute($stmt, false);

    
do {
        
while ($row = mssql_fetch_array($rs)) {
            print $row[
"id"]." ------ ".$row["username"]." ------ ".$row["password"]." ------ \r\n<br>";
        }
    } 
while (mssql_next_result($rs));

    print 
"user name is: ".$userName;
?>
posted @ 2012-01-04 19:25  rob_2010  阅读(770)  评论(0)    收藏  举报