国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 數(shù)據(jù)庫(kù) > SQL Server > 正文

php連接sql server

2024-08-31 00:54:34
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
php連接sql server

這兩天有個(gè)php連接sql server的項(xiàng)目,順便學(xué)習(xí)學(xué)習(xí)sqlserver 說(shuō)明: 1:PHP5.2.x本身有個(gè)php_mssql.dll的擴(kuò)展用來(lái)連接Sql server,但是這個(gè)dll只是用來(lái)連接低版本 Sql server的(2000以下版本),在Sql server 2005及以上版本無(wú)法使用mssql_connect連接到數(shù)據(jù)庫(kù)。 2:php5.3.x不再支持php_mssql.dll 拓展庫(kù)了,及時(shí)使用php5.2.x中的php_mssql.dll也無(wú)法使用。 微軟專門為PHP出了個(gè)SQL Server的擴(kuò)展(Windows版本的),對(duì)于Windows下使用php開發(fā)SQL Server應(yīng)用來(lái)說(shuō),這個(gè)擴(kuò)展有利于利用SQL Server來(lái)開發(fā)php平臺(tái)連接sql server數(shù)據(jù)庫(kù)管理系統(tǒng)。一、php5.3以下的版本連接sql server5.3以下的版本擴(kuò)展里面自帶一個(gè)php_mssql.dll;接數(shù)據(jù)庫(kù)的擴(kuò)展,可以利用這個(gè)擴(kuò)展鏈接數(shù)據(jù)庫(kù),(只限于鏈接低版本數(shù)據(jù)庫(kù))。具體的步驟如下:1:首先安裝sql server,超級(jí)不好安裝,我之前安裝的是2008版本的,Windows過期后就不能用了,然后重裝還裝不上,最后重裝系統(tǒng)才裝上2:確定SQL裝的時(shí)候用的是混合認(rèn)證模式,或SQL驗(yàn)證模式,然后打開php的配置文件(php.ini),開啟mssql擴(kuò)展(extension=php_pdo_mssql.dll前面的分號(hào)去掉)并且需要把mssql.secure_connection = On 重啟后生效。如果比較順利的話已經(jīng)可以連接數(shù)據(jù)庫(kù)了,如果連不上就需要繼續(xù)低下的配置:3:檢查ntwdblib文件的版本(php/下面和Apache/下面)下載正確的版本的 ntwdblib.dll(2000.80.194.0)覆蓋現(xiàn)有的DLL文件,(把ntwdblib.dll,php_mssql.dll 復(fù)制到system32目錄中也可以)ntwdblib.dll 用于PHP連接MSSQL2005或2008的驅(qū)動(dòng)文件。4:測(cè)試連接:mssql_connect('localhost,1433', '用戶名', '密碼');二、php5.3+連接sql server其實(shí)5.3以下的php版本已經(jīng)很少用了,況且安全性和兼容性都不好,所以高版本的php還是比較常見的。實(shí)踐證明低版本的php連接數(shù)據(jù)庫(kù)成功率比較低(2005以上的版本幾乎不能使用),推薦使用php5.3+ php使用微軟專門的擴(kuò)展 SQLSRV 來(lái)連接sqlserver數(shù)據(jù)庫(kù)步驟如下:1:先到微軟網(wǎng)站下載 SQL Server Driver for PHP (https://www.microsoft.com/en-us/download/details.aspx?id=20098)是一個(gè)自解壓的EXE文件,解壓縮后你會(huì)得到這么幾個(gè)文件:其中的52、53表示就是php的5.2.x和5.3.x 版本,選擇跟你php版本相匹配的;vc6或vc9的選擇要看你使用的是什么web服務(wù)器軟件,如果使用的是IIS那就選擇vc9的,如果是Apache則選擇vc6的,ts和nts的選擇要看你安裝的php版本是線程安全版的還是非線程安全版,ts是線程安全,nts是非線程安全。如果不知道可以在phpinfo里看Zend Extension Build這個(gè)屬性如下圖:

2:將擴(kuò)展拷貝到拷到php/ext目錄下,在php.ini文件,添加一下代碼:extension=在ext下的pdo擴(kuò)展(用于pdo)extension=在ext下的擴(kuò)展3:重啟服務(wù)器,打開phpinfo();看到以下狀態(tài)就證明添加擴(kuò)展成功,

4:連接測(cè)試:

 1 <?php 2     $serverName = "(local)"; 3     $connectionInfo =  array("UID"=>"sa","PWD"=>"admin","Database"=>"db_online"); 4     $conn = sqlsrv_connect( $serverName, $connectionInfo); 5     if( $conn ){ 6          echo "Connection established./n"; 7     }else{ 8          echo "Connection could not be established./n"; 9          die( var_dump(sqlsrv_errors()));10     }11     sqlsrv_close( $conn);12 ?>

注意這里的連接不是用mssql_connect而是用sqlsrv_connect,在這個(gè)版本中,還有幾個(gè)函數(shù):這個(gè)擴(kuò)展為php新增了一系列sqlsrv_開頭的函數(shù),常用的如下:

 1 sqlsrv_connect 2 sqlsrv_close 3 sqlsrv_commit 4 sqlsrv_errors 5 sqlsrv_fetch 6 sqlsrv_fetch_array 7 sqlsrv_fetch_metadata 8 sqlsrv_num_rows 9 sqlsrv_query10 sqlsrv_rollback11 sqlsrv_rows_affected12 . . . 

詳細(xì)信息可以參考:https://msdn.microsoft.com/zh-cn/library/cc296161%28v=SQL.90%29.aspx 開發(fā)文檔另外注意的是,如果使用這個(gè)擴(kuò)展連接Sql server 2005以及以上版本的sql server(如sql server 2008),你還需要在機(jī)器上先安裝 SQL Server Native Client 不然會(huì)出現(xiàn)如下錯(cuò)誤:

 1 array 2 0 =>array 3 0 =>string'IMSSP'(length=5) 4     'SQLSTATE' =>string'IMSSP'(length=5) 5 1 =>int-49 6     'code' =>int-49 7 2 =>string'This extension requires the Microsoft SQL Server 2012 Native Client. access the     following URL to download the Microsoft SQL Server 2012 Native Client ODBC driver for x86: http://go.microsoft.com/fwlink/?LinkId=163712'(length=216) 8 'message' =>string'This extension requires the Microsoft SQL Server 2008 Native Client. Access the following URL to download the Microsoft SQL Server 2008 Native Client ODBC driver for x86: http://go.microsoft.com/fwlink/?LinkId=163712'(length=216) 9 1 =>array10 0 =>string'IM002'(length=5)11     'SQLSTATE' =>string'IM002'(length=5)12 1 =>int013     'code' =>int014 2 =>string'[Microsoft][ODBC 驅(qū)動(dòng)程序管理器] 未發(fā)現(xiàn)數(shù)據(jù)源名稱并且未指定默認(rèn)驅(qū)動(dòng)程序'(length=71)15 'message' =>string'[Microsoft][ODBC 驅(qū)動(dòng)程序管理器] 未發(fā)現(xiàn)數(shù)據(jù)源名稱并且未指定默認(rèn)驅(qū)動(dòng)程序'(length=71)16 . . . .

解決方法:需要安裝SQL Server 2008 Native Client ODBC Driver,下載安裝文件sqlncli.msi 下載地址:http://download.microsoft.com/download/0/E/6/0E67502A-22B4-4C47-92D3-0D223F117190/sqlncli.msi 安裝后就可以了。總結(jié):到此全部完成,我在自己的電腦上裝了大半天,中間出現(xiàn)了各種錯(cuò)誤,總體感覺微軟的東西太不好用。不是萬(wàn)不得已誰(shuí)去用php鏈接sql server,鏈接MySQL不就得了。

相關(guān)安裝鏈接:

sql server 卸載:http://www.jb51.net/article/37301.htmsql server 安裝:http://www.cnblogs.com/pvistely/archive/2008/12/31/1365702.htmlsql server安裝:http://zhidao.baidu.com/link?url=6x87ogdDVZn65VB9220pplm_fXOlT01nA5HcPLb3CzY-t6q_Xd3wFJ9VQGqlcYlh0fEgpmsr41C6lxl18bJMfK錯(cuò)誤1:http://jingyan.baidu.com/article/03b2f78c4c7cad5ea237aec9.htmlsql server2005安裝:http://wenku.baidu.com/link?url=XJv0doRJDNg-p1I3J3zpXu19Fx32SN9Wcl7nZpIaFewIozxDTCTAz_xs_-9vNF9KRxsBX6iS2WXpWYgzwYyfPeTbGU6GrmqBFFSZjD5Qfzqhttp://jingyan.baidu.com/article/4e5b3e19705db091901e24bb.html
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 嘉定区| 将乐县| 牙克石市| 文山县| 慈溪市| 长顺县| 广丰县| 龙州县| 阿勒泰市| 凤阳县| 古丈县| 安乡县| 远安县| 丁青县| 建水县| 咸丰县| 东阿县| 松阳县| 买车| 巩义市| 商河县| 东乡族自治县| 临沭县| 沅陵县| 周至县| 工布江达县| 华容县| 大厂| 三都| 于田县| 文成县| 洞口县| 阜康市| 白玉县| 光泽县| 商都县| 包头市| 宁安市| 无为县| 朝阳市| 怀安县|