KanColle © 2014 DMM.com / KADOKAWA GAMES All Rights Reserved. / Animation by © Good Smile Company
PHP 連 MS SQL (sqlsrv)
#1
For Windows PHP
1.下載 SQLSRV30 (適用 MS SQL 2008/2010)
http://www.microsoft.com/downloads/en/details.aspx?FamilyID=80e44913-24b4-4113-8807-caae6cf2ca05&displaylang=en
執行後選擇解壓縮的目錄 ~\php\ext

2.安裝 SQL 2012 Native Client (雖然資料庫是用2008R2)
x64 http://go.microsoft.com/fwlink/?LinkID=239648&clcid=0x404 <-可用
x86 http://go.microsoft.com/fwlink/?LinkID=239647&clcid=0x404 <-未測

3.下載 ODBC Driver for SQL Server
https://docs.microsoft.com/zh-tw/sql/con...rver-ver15

4.php.ini 加入 extension="解壓縮後的文件名"
依下載的 PHP 版本選擇對應的 extension
PHP : VC6= Apache , VC9=IIS
php/extension : ts=Thread Safe , nts=Non Thread Safe= FastCGI

;extension=php_sqlsrv_53_ts.dll
;extension=php_sqlsrv_53_nts.dll
;extension=php_sqlsrv_54_ts.dll
;extension=php_sqlsrv_54_nts.dll
;extension=php_pdo_sqlsrv_53_ts.dll
;extension=php_pdo_sqlsrv_53_nts.dll
;extension=php_pdo_sqlsrv_54_ts.dll
;extension=php_pdo_sqlsrv_54_nts.dll

=======================
XP/2003 用 DLL
http://robsphp.blogspot.tw/2012/06/unoff...river.html
=======================
For Unix
php 需 5.3.6 以上版本 , CentOS 預設 php 5.3.3
http://pecl.php.net/package/sqlsrv
下載 sqlsrv for unix + PEAR套件

CentOS6安裝測試版(php 5.3.4以後的版本)
rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm
yum install php54w
yum install php54w-pear
yum install php54w-devel
pecl install sqlsrv
失敗 config.m4  找不到

4.連接
程式碼:
<?php
/*
Connect to the local server using Windows Authentication and specify
the AdventureWorks database as the database in use. To connect using
SQL Server Authentication, set values for the "UID" and "PWD"
attributes in the $connectionInfo parameter. For example:
$connectionInfo = array("UID" => $uid, "PWD" => $pwd));
*/
$serverName = "SQL名,不能用IP";
$connectionInfo = array( "Database"=>"資料庫名","UID"=>"帳號","PWD"=>"密碼");
$conn = sqlsrv_connect( $serverName, $connectionInfo);

if( $conn )
{
    echo "Connection established.\n";
}
else
{
    echo "Connection could not be established.\n";
    die( print_r( sqlsrv_errors(), true));
}

//-----------------------------------------------
// Perform operations with connection.
//-----------------------------------------------

/* Close the connection. */
sqlsrv_close( $conn);
?>

4.查詢
程式碼:
<?
//MS SQL 個體名
$serverName = "SQLEXPRESS";
//MSSQL 連線設定  (資料庫名,帳號,密碼)
$connectionInfo = array( "Database"=>"master","UID"=>"sa","PWD"=>"sa");
//連線語法
$conn = sqlsrv_connect( $serverName, $connectionInfo);
//查詢語法
$tsql = "SELECT * FROM table_name WHERE column_name = 'Value' ";
//PHP查詢語法
$stmt = sqlsrv_query( $conn, $tsql);

if( $stmt )
{
    echo "MS SQL Query successfully .\n";
}
else
{
    echo "MS SQL Query failed.\n";
    die( print_r( sqlsrv_errors(), true));
}

sqlsrv_free_stmt( $stmt);
sqlsrv_close( $conn);
?>
回覆


前往:


正在瀏覽這個主題的使用者: 1 位訪客