2011年5月12日 星期四

PHP透過ODBC連線到MS-SQL方式

PHP提供兩種方式,透過ODBC連到MS-SQL:


一、第一種稱為DSN Connect :

1. 首先到ODBC管理員中,選擇系統資料來源名稱,點選新增。


2. SQL Server為範例,點選SQL Server後按完成。

3. 建立名稱,並選擇伺服器。若在SQL Server在本機,選擇Local

4.輸入登入SQL Server所需要的帳號、密碼。

5.選擇資料庫,這裡以Northwind為範例。

6.這裡皆使用預設值,按完成。

7.最後按測試資料來源,測試是否正確連線。
 
 
8. 上述設定完畢後,再寫一個連線程式,供PHP連線呼叫使用。


$dsn = "ABC";
$user = "sa" ;
$password = "123456" ;
$conn = odbc_connect($dsn,$user,$password);



二、第二種稱為DSN-Less Connect :

不用設定ODBC管理員,直接將DSN寫在程式內,提供PHP呼叫使用。

$server="(local)"; //備註:local須加括號,如果用主機名稱就不用加括號
$database="Northwind";
$user="sa";
$password="123456";
$conn = odbc_connect("Driver={SQL Server};Server=$server;Database=$database;", $user, $password);



瞭解了嗎? 一個透過ODBC UI介面,設定DSN。一個則是手動建立DSN。

這兩種方式皆可,不影響效能。實務上會建議採用DSN-Less Connect方式,可以省去ODBC UI的設定,且參數值可直接在程式上設定,例如Server或Database。