中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PHP5.6.11訪問SQL Server2008R2幾種情況的示例分析

發布時間:2021-09-03 10:13:06 來源:億速云 閱讀:168 作者:小新 欄目:開發技術

小編給大家分享一下PHP5.6.11訪問SQL Server2008R2幾種情況的示例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

PHP天生支持MySQL,但是有時候也想讓它訪問SQL Server,該怎么辦呢?

最近找了點資料,測試成功了PHP訪問SQLSvr的幾種情況,限于時間,還沒有測試更多不同環境,把測試過的記錄如下:

測試環境:win7 x64 sp1,IIS 7.5, Apache 2.4 32位版本,PHP 5.2.6 win32, PHP 5.6.11 win32 ts(線程安全版)

注:由于“Microsoft Drivers for PHP for SQL Server”驅動程序目前只有32位版,所以如果是使用sql server數據庫的朋友,不建議使用php 64位,否則會導致無法連接 sql server 數據庫的問題!

php 5.2.6在iis上成功訪問了sql2000

php 5.2.6在iis上成功訪問了sql2008r2

php 5.6.11在apache上成功訪問了sql2008r2

【5.2.6 -> SQL2000】

為什么要用5.2.6這么舊的php版本做測試呢,因為php 5.2版本,內置了php_mssql.dll 模塊,

打開了php.ini中的extension=php_mssql.dll 配置選項,默認好像就支持mssql2000了,

打開phpinfo能看到相關的支持模塊內容:

PHP5.6.11訪問SQL Server2008R2幾種情況的示例分析

PS.IIS 7.0下安裝PHP現在方便了,可以通過一個第三方小工具 PHP Manager來安裝,也可以方便的切換iis下的php版本,這不是本文的主要內容,這里就不介紹了;

php manager for iis 7 下載安裝地址: http://phpmanager.codeplex.com/

PHP5.6.11訪問SQL Server2008R2幾種情況的示例分析

PHP5.6.11訪問SQL Server2008R2幾種情況的示例分析

寫一個測試的小例程:

<?php
$server ="127.0.0.1\sql2000"; //服務器IP地址,如果是本地,可以寫成localhost
$uid ="sa"; //用戶名
$pwd ="yoooko"; //密碼
$database ="master"; //數據庫名稱
//進行數據庫連接
$conn =mssql_connect($server,$uid,$pwd) or die ("connect failed");
mssql_select_db($database,$conn);
//執行查詢語句
$query ="select * from cs";
$row =mssql_query($query);
//打印輸出查詢結果
while($list=mssql_fetch_array($row))
{
print_r($list);
echo "<br>";
}
?>

在IIS 7.5下運行結果如下:成功!

PHP5.6.11訪問SQL Server2008R2幾種情況的示例分析

【5.6.11 -> SQL2008R2】

5.6以上的PHP已經沒有php_mssql.dll,貌似也不再原生支持sql2000以上版本的sql server了,要通過第三方模塊,在微軟官網找到了:

Microsoft Drivers for PHP for SQL Server

http://www.microsoft.com/en-us/download/details.aspx?id=20098

下載鏈接地址有四個文件:

?SQLSRV30.EXE
?SQLSRV31.EXE
?SQLSRV32.EXE
?SQLSRV40.EXE

分別支持不同的PHp版本

?Version 4.0 supports PHP 7.0+
?Version 3.2 supports PHP 5.6, 5.5, and 5.4
?Version 3.1 supports PHP 5.5 and 5.4
?Version 3.0 supports PHP 5.4.

如果是PHP 5.2要下載一個SQLSRV20.EXE,這個文件目前在網上也能很容易的找到;

(雖然5.2這么舊的版本早就該被淘汰了,但是考慮到某些環境還需要用它)

php_pdo_sqlsrv_52_ts_vc6.dll

php_sqlsrv_52_ts_vc6.dll

PHP5.6.11訪問SQL Server2008R2幾種情況的示例分析

1. 我手里是PHP 5.6.11 win32 ts,要用到這個

php_sqlsrv_56_ts.dll
php_pdo_sqlsrv_56_ts.dll

這兩個文件,復制到php\ext目錄下,

2. php.ini 里加上以下兩句:

extension=C:\PHP5\ext\php_sqlsrv_56_ts.dll
extension=C:\PHP5\ext\php_pdo_sqlsrv_56_ts.dll

3. 重啟IIS或者Apache,

4. 通過phpinfo能夠看到如下模塊顯示,我們的PHP應該此時就能訪問SQL Server 2008R2了;

PHP5.6.11訪問SQL Server2008R2幾種情況的示例分析

PHP5.6.11訪問SQL Server2008R2幾種情況的示例分析

5、寫一個小程序驗證一下:

<?php
try { 
$dbName = "sqlsrv:Server=127.0.0.1\sql2008r2;Database=master"; 
$dbUser = "sa"; 
$dbPassword = "yoooko"; 
$db = new PDO($dbName, $dbUser, $dbPassword); 
if ($db) 
{ 
echo "database connect succeed.<br />"; 
}
}
catch (PDOException $e)
{ 
$content = iconv("UTF-8","gbk",$e->getMessage()); 
echo $content . "<br />";
}
//echo "Hello PDO to MS SqlSrv!";
?>

如果出現如下提示:

PHP5.6.11訪問SQL Server2008R2幾種情況的示例分析

可能你還需要安裝 Microsoft&reg; ODBC Driver 11 for SQL Server&reg; - Windows

下載地址:https://www.microsoft.com/zh-cn/download/details.aspx?id=36434

PHP5.6.11訪問SQL Server2008R2幾種情況的示例分析

如果正確的話,應該就OK了:

PS.由于新的模塊是通過PDO方式訪問SQL Server 2008R2,如果是本機訪問,那么直接通過ip地址和sa賬號就能訪問了,

如果php和sql2008r2在不同電腦上,還得設置TCP 端口1433來訪問,見下面第二張圖,把動態端口改為0,把端口設置為14333如果你的SQL2000已經占用了1433,訪問地址后面加個,xxxx端口號

sqlsrv:Server=192.168.1.xxx\sql2008r2,14333;Database=master

PHP5.6.11訪問SQL Server2008R2幾種情況的示例分析

PHP5.6.11訪問SQL Server2008R2幾種情況的示例分析

以上是“PHP5.6.11訪問SQL Server2008R2幾種情況的示例分析”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宾川县| 巧家县| 电白县| 汤原县| 安新县| 巩留县| 阳春市| 鹰潭市| 甘谷县| 龙南县| 高陵县| 塔河县| 醴陵市| 长阳| 罗源县| 禄丰县| 临海市| 陇南市| 榆社县| 花垣县| 深水埗区| 攀枝花市| 周宁县| 武安市| 锦州市| 屯留县| 利津县| 渑池县| 永兴县| 行唐县| 湾仔区| 台前县| 林州市| 莱芜市| 京山县| 晋江市| 隆德县| 泽州县| 藁城市| 永福县| 陈巴尔虎旗|