當前位置:首頁 » 編程語言 » phpmssql擴展

phpmssql擴展

發布時間: 2023-06-26 22:57:14

php怎麼連接sql server 2012

1:PHP5.2.x本身有個php_mssql.dll的擴展用來連接Sql server,但是這個dll只是用來連接低版本 Sql server的(2000以下版本),在Sql server 2005及以上版本無法使用mssql_connect連接到資料庫

2: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.3以下的版本連接sql server

5.3以下的版本擴展裡面自帶一個php_mssql.dll;接資料庫的擴展,可以利用這個擴展鏈接資料庫,(只限於鏈接低版本資料庫)。

具體的步驟如下:

1:首先安裝sql server,超級不好安裝,我之前安裝的是2008版本的,Windows過期後就不能用了,然後重裝還裝不上,最後重裝系統才裝上

2:確定SQL裝的時候用的是混合認證模式,或SQL驗證模式,然後打開php的配置文件(php.ini),開啟mssql擴展 (extension=php_pdo_mssql.dll前面的分號去掉)並且需要把mssql.secure_connection = On 重啟後生效。

如果比較順利的話已經可以連接資料庫了,如果連不上就需要繼續低下的配置:

3: 檢查ntwdblib文件的版本(php/下面和Apache/下面)下載正確的版本的 ntwdblib.dll(2000.80.194.0)覆蓋現有的DLL文件,(把ntwdblib.dll,php_mssql.dll 復制到system32目錄中也可以)ntwdblib.dll 用於PHP連接MSSQL2005或2008的驅動文件。

4:測試連接:mssql_connect('localhost,1433', '用戶名', '密碼');

二、php5.3+連接sql server

其 實5.3以下的php版本已經很少用了,況且安全性和兼容性都不好,所以高版本的php還是比較常見的。實踐證明低版本的php連接資料庫成功率比較低 (2005以上的版本幾乎不能使用),推薦使用php5.3+ php使用微軟專門的擴展 SQLSRV 來連接sqlserver資料庫

步驟如下:

1:先到微軟網站下載 SQL Server Driver for PHP 是一個自解壓的 EXE文件,解壓縮後你會得到這么幾個文件:

其中的52、53表示就是php的5.2.x和5.3.x 版本,選擇跟你php版本相匹配的;vc6或vc9的選擇要看你使用的是什麼web伺服器軟體,如果使用的是IIS那就選擇vc9的,如果是Apache 則選擇vc6的,ts和nts的選擇要看你安裝的php版本是線程安全版的還是非線程安全版,ts是線程安全,nts是非線程安全。

如果不知道可以在phpinfo里看Zend Extension Build這個屬性如下圖:

2:將擴展拷貝到拷到php/ext目錄下,在php.ini文件,添加一下代碼:

extension=在ext下的pdo擴展(用於pdo)

extension=在ext下的擴展

3:重啟伺服器,打開phpinfo();看到以下狀態就證明添加擴展成功,


4:連接測試:

<?php $serverName = "(local)"; $connectionInfo = array("UID"=>"sa","PWD"=>"admin","Database"=>"db_online"); $conn = sqlsrv_connect( $serverName, $connectionInfo); if( $conn ){ echo "Connection established. "; }else{ echo "Connection could not be established. "; die( var_mp(sqlsrv_errors())); } sqlsrv_close( $conn); ?>


注意這里的連接不是用mssql_connect而是用sqlsrv_connect,在這個版本中,還有幾個函數:

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


sqlsrv_connect

sqlsrv_close

sqlsrv_commit

sqlsrv_errors

sqlsrv_fetch

sqlsrv_fetch_array

sqlsrv_fetch_metadata

sqlsrv_num_rows

sqlsrv_query

sqlsrv_rollback

sqlsrv_rows_affected

. . .

另外注意的是,如果使用這個擴展連接Sql server 2005以及以上版本的sql server(如sql server 2008),你還需要在機器上先安裝 SQL Server Native Client

不然會出現如下錯誤:

array

0 =>array

0 =>string'IMSSP'(length=5)

'SQLSTATE' =>string'IMSSP'(length=5)

1 =>int-49

'code' =>int-49

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)

'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)

1 =>array

0 =>string'IM002'(length=5)

'SQLSTATE' =>string'IM002'(length=5)

1 =>int0

'code' =>int0

2 =>string'[Microsoft][ODBC 驅動程序管理器] 未發現數據源名稱並且未指定默認驅動程序'(length=71)

'message' =>string'[Microsoft][ODBC 驅動程序管理器] 未發現數據源名稱並且未指定默認驅動程序'(length=71)

  • 解決方法:需要安裝SQL Server 2008 Native Client ODBC Driver,下載安裝文件sqlncli.msi,安裝後就可以了。

Ⅱ 我使用xampp,想增加php_pdo_mssql.dl這個擴展,但是一開啟apache就會提示找不到ntwdblib.dll

php_pdo_mssql.dll 和 ntwdblib.dll 這兩個文件必須放在system32文件夾下面同時要保證ntwdblib.dll 這個文件的版本和sqlserver的版本對應。

ntwdblib.dll 版本為 2000.2.8.0 是 對應 SqlServer2000
ntwdblib.dll 版本為 2000.80.194.0 是 對應 SqlServer2005
ntwdblib.dll 版本為 2000.80.2039 是 對應 SqlServer2008

特別是ntwdblib.dll 這個文件版本一定要選對應的。

Ⅲ PHP中擴展庫是什麼意思

擴展庫是php擴展的功能,比如php本來不支持操作某種功能 ,但在新版本想對它提供支持,就以擴展的方式來提供,這樣,我們在配置php時,如果我們不用此功能,我們就可以讓php不載入他.從而節省伺服器資源.提供其性能
php的擴展庫一般放在php目錄下的ext目錄里.你在網上下載的php壓縮包解壓後應該可以看到.
php.ini中的 extension_dir 用來指定你的擴展名的地址 。
php.ini中有一排像 ;extension="xxxxxx.dll" 的內容就是用來配置讓你的php運行環境支持什麼不支持什麼。
以下為php.ini中的剪切段
------------------------------
;extension=php_bz2.dll
;extension=php_curl.dll
;extension=php_dba.dll
;extension=php_dbase.dll
;extension=php_exif.dll
;extension=php_fdf.dll
;extension=php_gd2.dll //php對圖片操作的擴展
;extension=php_gettext.dll
;extension=php_gmp.dll
;extension=php_ifx.dll
;extension=php_imap.dll
;extension=php_interbase.dll
;extension=php_ldap.dll
;extension=php_mbstring.dll
;extension=php_mcrypt.dll
;extension=php_mhash.dll
;extension=php_mime_magic.dll
;extension=php_ming.dll
;extension=php_msql.dll
;extension=php_mssql.dll //php操作mssql (sql server)資料庫的擴展
;extension=php_mysql.dll //php操作mysql資料庫的擴展
------------------------------
要讓php支持某種功能,把extension前面的 " ; "號去掉,重啟apache或iis即可。

Ⅳ php常用擴展有哪些

這個是php擴展庫支持。
在php.ini裡面可以看到952行。
extension=php_rar.dll
;extension=php_bz2.dll
extension=php_curl.dll
;extension=php_dba.dll
;extension=php_exif.dll
;extension=php_fileinfo.dll
extension=php_gd2.dll
;extension=php_gettext.dll
;extension=php_gmp.dll
;extension=php_intl.dll
;extension=php_imap.dll
;extension=php_interbase.dll
extension=php_ldap.dll
extension=php_mbstring.dll
;extension=php_ming.dll
;extension=php_mssql.dll
extension=php_mysql.dll
extension=php_mysqli.dll
;extension=php_oci8.dll
;extension=php_oci8_11g.dll
extension=php_openssl.dll
;extension=php_pdo_firebird.dll
;extension=php_pdo_mssql.dll
extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll
;extension=php_pdo_odbc.dll
;extension=php_pdo_pgsql.dll
extension=php_pdo_sqlite.dll
;extension=php_pgsql.dll
;extension=php_phar.dll
;extension=php_pspell.dll
;extension=php_shmop.dll
;extension=php_snmp.dll
;extension=php_soap.dll
extension=php_sockets.dll
;extension=php_sqlite.dll
;extension=php_sqlite3.dll
;extension=php_sybase_ct.dll
;extension=php_tidy.dll
;extension=php_xmlrpc.dll
;extension=php_xsl.dll
;extension=php_zip.dll
extension= php_memcache.dll
每一行前面分號去掉的表示開啟擴展庫的。
有些擴展庫是安裝的時候默認開啟的,有些需要手動開啟。
還有一些擴展庫需要自己去下載庫文件(要對應相應的版本)
下載的庫文件放在php安裝根目錄下面的ext目錄下面。當然這個目錄也是可以自己配置的。

Ⅳ 查看PHP是否支持mssql

看看有沒有mssql這一項.如果有就說明支持,如果沒有可以手動在php.ini裡面開啟.

Ⅵ PHP+MS SQL怎麼連接啊

這個說來有點復雜,PHP 5.3以上不支持mssql擴展了,需要在php.ini中添加
extension=php_sqlsrv_53_ts_vc6.dll (適用於APACHE)
extension=php_sqlsrv_53_ts_vc9.dll (適用於IIS)
要去微軟下載sqlsrv,下載後是個ZIP包,解壓放到PHP\EXT目錄下
另外還要下載並安裝Microsoft Microsoft SQL Server 2008 R2 Native Client MSI
至於PHP連接MSSSQL在sqlsrv的壓縮包里有

有個教程比較好,可以看一下:http://my.oschina.net/acitiviti/blog/370097

Ⅶ php 怎麼連接sqlserver

php連接sqlserver的方法如下:

以PHP版本是php5.6.12,mssql資料庫版本為2008版本為例來說明。

連接方法有兩種:

  1. 直接連接,代碼如下:

    $servname="CAPTAINHERO567";
    $conninfo=array( "Database"=>"netdata", "UID"=>"lxz2005", "PWD"=>"831140");
    $conn=sqlsrv_connect($servname, $conninfo);
    $sql="select * from Pinfo";
    $db=sqlsrv_query($conn, $sql);
    while($row=sqlsrv_fetch_array($db))
    {
    echo("<div>".iconv("GB2312","UTF-8",$row["Pname"])."</div>");
    }

  2. 使用PDO抽象數據層連接

    $hostname = "192.168.1.100";
    $dbname = "Northwind";
    $username = "sa";
    $pwd = "pwd100";
    $dsn="sqlsrv:Server=$hostname;database=$dbname";

    $conn = new PDO ($dsn,$username,$pwd);
    $conn->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
    echo "mssql database connnection sucessed!";

Ⅷ 寶塔linux 面板安裝 php sqlserver 擴展

用unixODBC連接
記錄步驟,詳細細節請自己問網路
首先需要安裝freetds
cd freetds-0.91
./configure --prefix=/usr/local/freetds --enable-msdblib --with-tdsver=7.1 // 注意這里用7.1 因為最高是7.2 如果用7.2會默認5.0
make && make install
當然我推薦使用ODBC+freetds 畢竟這樣PHP可以更好的支持
所以先安裝 unixODBC
cd unixODBC-2.3.1
./configure --prefix=/usr/local/unixODBC
make && make install
然後freetds需要如下配置
./configure --prefix=/usr/local/freetds --with-unixodbc=/usr/local/unixODBC --enable-msdblib --with-tdsver=7.1
make && make install
配置ODBC
cd /usr/local/unixODBC/etc
vi odbcinst.ini
[TDS]
Description = MS-SQLServer
Driver = /usr/local/freetds/lib/libtdsodbc.so
Setup = /usr/local/freetds/lib/libtds.so
FileUsage = 1
保存退出
vi odbc.ini
[mssql]
Driver = TDS
Server = 192.168.1.2
Database = xxxDB
Port = 1433
Socket =
Option =
Stmt =
保存退出
現在可以測試連接SQLSERVER了
/usr/local/unixODBC/bin/isql -v mssql sa password
//mssql 是 odbc.ini里定義的節點名
完美成功。。。
當然別忘記去PHP動態的擴展ODBC組件

熱點內容
大眾朗逸哪個配置好點 發布:2025-02-12 01:25:41 瀏覽:67
引用jar怎麼發布到伺服器 發布:2025-02-12 01:07:44 瀏覽:333
舊電腦開伺服器 發布:2025-02-12 01:02:50 瀏覽:277
電腦伺服器兩個電源什麼意思 發布:2025-02-12 00:55:15 瀏覽:220
linux外網不能訪問埠 發布:2025-02-12 00:55:13 瀏覽:438
安卓系統哪裡可以看充電次數 發布:2025-02-12 00:53:53 瀏覽:723
如何選物理伺服器cpu 發布:2025-02-12 00:48:22 瀏覽:68
怎麼買編程 發布:2025-02-12 00:31:42 瀏覽:932
固態硬碟如何做緩存檔 發布:2025-02-12 00:19:48 瀏覽:519
cm13源碼下載 發布:2025-02-12 00:13:58 瀏覽:554