程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP基於ADODB調用MSSQL存儲過程

PHP基於ADODB調用MSSQL存儲過程

編輯:關於PHP編程

前幾天弄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久的原因了。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved