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

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

贊助商鏈接:

主站蜘蛛池模板: 曲阳县| 吉林省| 华池县| 樟树市| 松滋市| 宽城| 武冈市| 花莲市| 鄂尔多斯市| 承德市| 淮北市| 时尚| 南开区| 全州县| 海盐县| 临汾市| 景宁| 兴山县| 三门峡市| 新野县| 北宁市| 石首市| 华坪县| 四会市| 乌兰浩特市| 四平市| 文水县| 西乡县| 呼图壁县| 建平县| 尼木县| 渝中区| 河池市| 弥勒县| 安吉县| 永兴县| 拉萨市| 沿河| 亳州市| 丘北县| 田林县|