成人午夜激情影院,小视频免费在线观看,国产精品夜夜嗨,欧美日韩精品一区二区在线播放

PHP 5.3.x連接SQL Server 2005的教程

2013-01-30 23:50:34來源:新豬豬作者:

php5.3.x不再支持php_mssql.dll 拓展庫了,及時使用php5.2.x中的php_mssql.dll 也無法使用。 微軟專門為PHP出了個SQL Server的擴展(Windows版本的),對于Windows下使用php開發SQL Server應用來說,這個擴展有利于

php5.3.x不再支持php_mssql.dll 拓展庫了,及時使用php5.2.x中的php_mssql.dll 也無法使用。 微軟專門為PHP出了個SQL Server的擴展(Windows版本的),對于Windows下使用php開發SQL Server應用來說,這個擴展有利于利用SQL Server來開發php平臺連接sql server數據庫管理系統。

PHP5.2.x本身有個php_mssql.dll的擴展用來連接Sql server,但是貌似這個dll只是用來連接低版本 Sql server的(2000以下版本),在Sql server 
2005及以上版本則根本無法使用mssql_connect連接到數據庫。

先到微軟網站下載 SQL Server Driver for PHP :http://www.microsoft.com/downloads/details.aspx?familyid=CCDF728B-1EA0-48A8-A84A-5052214CAAD9&displaylang=en , 這是一個自解壓的EXE文件,解壓縮后你會得到這么幾個文件:

\

其中的52、53表示就是php的5.2.x和5.3.x 版本,選擇跟你php版本相匹配的;選擇vc6或vc9的主要看你使用的是什么web服務器軟件,如果使用的是IIS那就選擇vc9的,如果是Apache則選擇vc6的至于ts和nts,就要看你安裝的php版本是線程安全版的還是非線程安全版,ts是線程安全,nts是非線程安全比如我的配置是IIS FastCgi php-5.3.2-nts-Win32-VC9-x86,那么就應該選擇php_sqlsrv_53_nts_vc9.dll 文件并把它放到php安裝目錄的ext目錄下,并在php.ini中添加 extension=php_sqlsrv_53_nts_vc9.dll 接下來重新啟動IIS 并運行phpinfo.php,來查看phpinfo的配置信息,如果看到下圖信息,則說明可添加成功,您的php5.3.x可以鏈接sql server了。

\

另外注意的是,如果使用這個擴展連接Sql server 2005以上版本的sql server(如sql server 2008),你還需要在機器上先安裝 SQL Server Native Client :http://download.microsoft.com/download/0/E/6/0E67502A-22B4-4C47-92D3-0D223F117190/sqlncli.msi

這個擴展為php新增了一系列sqlsrv_開頭的函數,函數參考如下:

  • sqlsrv_begin_transaction
  • sqlsrv_cancel
  • sqlsrv_client_info
  • sqlsrv_close
  • sqlsrv_commit
  • sqlsrv_configure
  • sqlsrv_connect
  • sqlsrv_errors
  • sqlsrv_execute
  • sqlsrv_fetch
  • sqlsrv_fetch_array
  • sqlsrv_fetch_object
  • sqlsrv_fetch_metadata
  • sqlsrv_free_stmt
  • sqlsrv_get_config
  • sqlsrv_get_field
  • sqlsrv_has_rows
  • sqlsrv_next_result
  • sqlsrv_num_fields
  • sqlsrv_num_rows
  • sqlsrv_prepare
  • sqlsrv_query
  • sqlsrv_rollback
  • sqlsrv_rows_affected
  • sqlsrv_send_stream_data
  • sqlsrv_server_info

更多詳細的說明可以在剛才的自解壓的文件中有個 SQLServerDriverForPHP.chm 幫助文件中可以找到打開后點擊API Reference節點點擊Example Application 節點可以看到php程序范例。是不是很簡單?跟平時用的mysql、mssql函數差不多的。

我在用到了php_pdo_sqlsrv_53_ts_vc9.dllphp_sqlsrv_53_ts_vc9.dll 這2個文件

測試示例如下:

$serverName = "(local)\sqlexpress";
$connectionOptions = array("UID"=>"sa","PWD"=>"abc123","Database"=>"數據庫名");
$conn = sqlsrv_connect( $serverName, $connectionOptions);
if( $conn === false ){
  die('不能打開連接');
 }
$tsql = "SELECT TOP 3 * FROM Company";//注意,這里是mssql,不能用limit
$cursorType = array("Scrollable" => SQLSRV_CURSOR_KEYSET);
$result = sqlsrv_query($conn, $tsql, $params, $cursorType);
if ( $result === false){
 print_r(sqlsrv_errors());exit;
}

if(sqlsrv_has_rows($result))
{
 $rowCount = sqlsrv_num_rows($result);
 while( $row = sqlsrv_fetch_array( $result, SQLSRV_FETCH_ASSOC))
 {
  echo iconv("gb2312",   "utf-8", $row['Name']) ;//連接的mssql數據庫肯定是中文的,需要轉碼

 }
}
else
{
 echo '沒有數據';
}

關鍵詞:PHPSQLServer

贊助商鏈接:

主站蜘蛛池模板: 合江县| 衡阳市| 繁峙县| 寻甸| 宾川县| 莱阳市| 清原| 怀安县| 曲水县| 惠安县| 雷州市| 汉川市| 高青县| 保山市| 白水县| 德阳市| 乌兰县| 天门市| 勃利县| 巴林左旗| 房产| 南漳县| 清原| 姚安县| 六枝特区| 北宁市| 漯河市| 巨野县| 济源市| 长丰县| 龙泉市| 环江| 万山特区| 林甸县| 六安市| 堆龙德庆县| 南投市| 攀枝花市| 茌平县| 扎赉特旗| 滦平县|