ホームページ  >  記事  >  バックエンド開発  >  PHP は MSSQL データベース (SQLSRV) インスタンスに接続します

PHP は MSSQL データベース (SQLSRV) インスタンスに接続します

小云云
小云云オリジナル
2018-03-05 13:12:373586ブラウズ

MSSQL2008/2005 データベースへの PHP の接続は、mssql2000 への以前の接続とは異なります。mssql2008/2005 に接続するには、MSSQL 接続用の PHP ドライバー拡張機能と、一般的に使用される hp.ini に extension=php_mssql.dll 拡張機能を追加する必要があります。 MSSQL2000 への接続にのみ適しています。これに対する解決策を見てみましょう。

1. 拡張機能をダウンロードします

(1) 公式 Web サイトにアクセスして、SQL Server Driver for PHP の拡張パッケージをダウンロードします。ここからダウンロードしました。 http://www.microsoft.com/en-us/download/details .aspx? id=20098 [ダウンロード後、最初にインストールしてから解凍する必要があることに注意してください]

(2) このサイトから直接ダウンロードすることもできます (以前は Microsoft 公式からダウンロードしました) [ここをクリックしてください]直接ダウンロードする]
ダウンロードします ダウンロードした rar ファイルを解凍すると、.dll ファイルが大量に得られます。

ドライバーをダウンロードし、ダウンロード後にリリース プログラムをインストールします。その中には次のファイルがあります:
php_pdo_sqlsrv_52_nts.dll
php_pdo_sqlsrv_52_ts .dll
php_pdo_sqlsrv_53_nts_vc6.dll
php_pdo_sqlsrv_53_nts_vc9.dll
php_pdo_sqlsrv_53_ts_vc6.dll
php_pdo_sqlsrv_53_ts_vc9.dll
php_sqlsrv_52 _nts.dll
php_sqlsrv_52_ts.dll
php_sqlsrv_53_nts_vc6.dll
php_s qlsrv_53_nts_vc9.dll
php_sqlsrv_53_ts_vc6.dll
php_sqlsrv_53_ts_vc9.dll
SQLServer DriverForPHP.chm (マニュアル、英語が十分であれば、読むことができます、へへ)
SQLServerDriverForPHP_License.rtf
SQLServerDriverForPHP_Readme.htm (readme ファイル)

2. 拡張機能を追加します

(vc6/vc9) のニーズに応じて拡張機能を選択します。私の環境は WAMP です。 (php5.2.6/apache2.2.8)、php_sqlsrv_52_ts_vc6.dll、php_pdo_sqlsrv_52_ts_vc6.dll を選択し、これら 2 つのファイルを wamp インストール ディレクトリの ext ディレクトリにコピーします。ext ディレクトリは wamp/bin/php/php5.2.6/ にあります。 ext/

3 ;extension=php_pdo.dll を指定し、pdo 接続拡張機能を有効にします

( 3) apache を再起動します (pdo 接続)

<?php
  $servern="SFKFK27EL8FJ\SQLTRY";
  $coninfo=array("Database"=>"try2","UID"=>"sa","PWD"=>"123");
  $conn=sqlsrv_connect($servern,$coninfo) or die ("连接失败!");
  $val=sqlsrv_query($conn,"select * from usertable");
  while($row=sqlsrv_fetch_array($val)){
    echo $row[1]."<br />";
  }
  sqlsrv_close($conn); 
?>

5. 例

リンクの例:
mssql_lib.php ファイルは次のとおりです。

<?php
class DB {
    var $con = null;
    function __construct($dbhost,$dbuser,$dbpass,$dbname) {
        $connectionInfo =  array("UID"=>$dbuser,"PWD"=>$dbpass,"Database"=>$dbname);
        $this->con = sqlsrv_connect($dbhost,$connectionInfo);
    }
    function query($sql){
        $result = sqlsrv_query($this->con, $sql);
    }
    function getRow($sql){
        $result = sqlsrv_query($this->con, $sql);
        $arr = array();
        while($row = sqlsrv_fetch_array($result))
        {
            $arr[] = $row;
        }
        return $arr[0];
    }
    function getAll($sql){
        $result = sqlsrv_query($this->con, $sql);
        $arr = array();
        while($row = sqlsrv_fetch_array($result))
        {
            $arr[] = $row;
        }
        return $arr;
    }
    function __destruct() {
        unset($con);
    }
}

test.phpページは以下の通りです:

//简单调用
$db = new DB(DB_HOST, DB_USER, DB_PASS, DB_NAME);
$sql = "select * from crm_order_batch where (status=0 or status is null) and lock_id is not null  ";
$orders_add_list = $db->getAll($sql);

関連推奨事項:


MSSQLクエリデータページングの操作方法


MSSQLに接続するためのphpメソッド

MySQLデータベースソースコマンド詳細説明_MsSql

以上がPHP は MSSQL データベース (SQLSRV) インスタンスに接続しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。