1、軟件配置
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過(guò)有效、簡(jiǎn)單的方式提供給客戶,將通過(guò)不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:申請(qǐng)域名、網(wǎng)站空間、營(yíng)銷軟件、網(wǎng)站建設(shè)、固鎮(zhèn)網(wǎng)站維護(hù)、網(wǎng)站推廣。
Win7 64 +wampserver2.2d-x32+SQL Server 2008 R2數(shù)據(jù)庫(kù),wamp2.2中的php版本是5.3.10。
Php環(huán)境也可以換成php+apache。
2、支持連接MySQL Server配置
php版本5.3以前,有php_mssql功能,可以使用,但是5.3及以后的版本不支持。
2.1、php連接mssql設(shè)置(php5.3以前版本)
(1)、打開php.ini,將
;extension=php_mssql.dll前面的分號(hào)(;)去掉,然后重啟 Apache。如果不行的話,進(jìn)行第2步。
(2)檢查一下你的php安裝目錄下的ext下面有沒(méi)有php_mssql.dll存在,如果沒(méi)有,從重新下載一個(gè)php安裝,要下載那個(gè)壓縮包的才是最完整的。
如果ext目錄下已經(jīng)有了php_mssql.dll,那么你需要打開php.ini,找到
extension_dir = "./ext"
這一句(或者類似的,不一定是"./ext",查找"extension_dir"即可),然后把"./ext"修改為你的php安裝目錄的ext目錄的完整路徑,比如"c:/php/ext",或者"c:/program files/php/ext"這樣。然后再次重啟 Apache。如果還是不行的話,可能就需要第3步了。
(3)把 php 目錄下的 ntwdblib.dll 和 php_mssql.dll 復(fù)制到 system32的系統(tǒng)目錄中去,然后重起Apache。
(4)然后就可以連接MSSQL,并進(jìn)行一些操作了。連接例子如下:
2.2、php連接sqlsrv(php5.3以及以上版本)
(1)、下載Microsoft Drivers for?PHP?for SQL Server,官方下載地址:,我使用的是SQLSRV2.0。
(2)、解壓下載下來(lái)的文件將php_pdo_sqlsrv_53_ts_vc9.dll文件和php_sqlsrv_53_ts_vc9.dll文件復(fù)制到php安裝目錄下的ext文件夾中。此處根據(jù)版本不同使用的文件不同。
(3)、在php.ini中添加
extension=php_sqlsrv_53_ts_vc9.dll
extension=php_pdo_sqlsrv_53_ts_vc9.dll
到很多;extension=***.dll語(yǔ)句后面,注意extension_dir 指向的位置是否正確。
(4)、重啟apache,然后訪問(wèn)訪問(wèn)地址/?Phpinfo=1,出現(xiàn)下面圖片中的內(nèi)容,則代表配置正確。
(5)、寫測(cè)試代碼,測(cè)試代碼如下:
?php
header("Content-type: text/html; charset=utf-8");
$serverName = "localhost"; //數(shù)據(jù)庫(kù)服務(wù)器地址$uid = "foodcert"; //數(shù)據(jù)庫(kù)用戶名$pwd = "foodcert"; //數(shù)據(jù)庫(kù)密碼$connectionInfo = array("UID"=$uid, "PWD"=$pwd, "Database"="FoodCert");
$conn = sqlsrv_connect( $serverName, $connectionInfo);if( $conn == false)
{
echo "連接失??!";
die( print_r( sqlsrv_errors(), true));
}else{
echo "連接成功!"; ?
}
$query = sqlsrv_query($conn, "select * from 數(shù)據(jù)庫(kù)表");while($row = sqlsrv_fetch_array($query))
{
print_r($row);
}?
(6)、上面完成之后,測(cè)試代碼的時(shí)候會(huì)出現(xiàn)連接失敗,因?yàn)闆](méi)有安裝sql server nation client ,本地客戶端,去下載合適的客戶端,我使用的是Microsoft? SQL Server? 2012 Native Client,下載地址:
(7)、安裝完成之后,在重新啟動(dòng)apache,然后訪問(wèn)就可以連接成功了。
(8)、注意:在php.ini文件所在的文件夾中必須要有ntwdblib.dll文件存在。
您好,不可以連接,默認(rèn)沒(méi)有提供連接sql server的數(shù)據(jù)庫(kù)管理工具,只提供了sqlite和mysql的工具。
hp連接mssql數(shù)據(jù)庫(kù)有幾個(gè)注意事項(xiàng),尤其mssql的多個(gè)版本、32位、64位都有區(qū)別。
首先,php.ini文件中;extension=php_pdo_mssql.dll
;extension=php_pdo_odbc.dll
前面的分號(hào)去掉,對(duì)應(yīng)的使哪種方式連接mssql。注意要重啟服務(wù)使其生效。
一、建立連接
1、odbc
首先,在php程序所在的服務(wù)器設(shè)置odbc。這里32位和64位操作系統(tǒng)有區(qū)別。32位的從控制面板中管理工具中的數(shù)據(jù)源(odbc)直接建立就可以了,64位的要運(yùn)行C:\Windows\SysWOW64\odbcad32.exe
從這里面設(shè)置。注意:上面只的是數(shù)據(jù)庫(kù)服務(wù)器為32為的,數(shù)據(jù)源設(shè)置服務(wù)器為32位和64位兩種的情況。只要兩個(gè)服務(wù)器建立的數(shù)據(jù)源位數(shù)一致就好。
下面是odbc建立連接代碼。
$con
=
odbc_connect('odbc名稱','用戶名','密碼');
2、連接mssql2000
$con
=
mssql_connect('數(shù)據(jù)庫(kù)地址','用戶名','密碼');
3、連接mssql2008
$connectionInfo
=
array("UID"=用戶名,"PWD"=密碼,"Database"="數(shù)據(jù)庫(kù)名稱");
$con
=
sqlsrv_connect(
數(shù)據(jù)庫(kù)地址,$connectionInfo);
二、輸入查詢代碼
這個(gè)都一樣,可以直接寫入,也可以從mssql中驗(yàn)證好后復(fù)制過(guò)來(lái)。簡(jiǎn)單點(diǎn)說(shuō)就是把一個(gè)sql語(yǔ)句賦值給一個(gè)變量。
類似下面代碼
$query
=
"SELECT
top
12
*
數(shù)據(jù)庫(kù)名稱
order
by
id
desc";
三、建立查詢并取出數(shù)據(jù)
1、odbc
$result
=
odbc_do($con,$query);
while(odbc_fetch_row($result))
{
$變量名稱
=
odbc_result($result,
"字段名稱");
}
2、連接mssql2000
$result
=
mssql_query($con,
$query);
while($row
=mssql_fetch_array($result))
{
$變量名稱
=
$row["字段名稱"];
}
3、連接mssql2008
$result
=
sqlsrv_query($con,
$query);
while($row
=
sqlsrv_fetch_array($result))
{
$變量名稱
=
$row["字段名稱"];
}
在php5.3及以后的版本中不附帶sqlsrv庫(kù)了。所以要從微軟這里下載。
四、關(guān)閉連接
這個(gè)沒(méi)有什么區(qū)別,分別是odbc_close();和mssql_close()和sqlsrv_close();