PHP 資料庫 ODBC

ODBC 是一種應用程式程式設計介面(Application Programming Interface,API),使我們有能力連線到某個資料來源(比如一個 MS Access 資料庫)。


建立 ODBC 連線

通過一個 ODBC 連線,您可以連線到您的網路中的任何計算機上的任何資料庫,只要 ODBC 連線是可用的。

這是建立到達 MS Access 資料庫的 ODBC 連線的方法:

  1. 在控制面板中開啟管理工具圖示。
  2. 雙擊其中的資料來源(ODBC)圖示。
  3. 選擇系統 DSN 選項卡。
  4. 點選系統 DSN 選項卡中的新增
  5. 選擇Microsoft Access Driver。點選完成
  6. 在下一個介面,點選選擇來定位資料庫。
  7. 為資料庫起一個資料來源名(DSN)
  8. 點選確定

請注意,必須在您的網站所在的計算機上完成這個配置。如果您的計算機上正在執行 Internet 資訊服務(IIS),上面的指令將會生效,但是如果您的網站位於遠端伺服器,您必須擁有對該伺服器的物理訪問許可權,或者請您的主機提供商為您建立 DSN。


連線到 ODBC

odbc_connect() 函式用於連線到 ODBC 資料來源。該函式有四個引數:資料來源名、使用者名稱、密碼以及可選的指標型別。

odbc_exec() 函式用於執行 SQL 語句。

例項

下面的例項建立了到達名為 northwind 的 DSN 的連線,沒有使用者名稱和密碼。然後建立並執行一條 SQL 語句:

$conn=odbc_connect('northwind','','');
$sql="SELECT * FROM customers";
$rs=odbc_exec($conn,$sql);


取回記錄

odbc_fetch_row() 函式用於從結果集中返回記錄。如果能夠返回行,則函式返回 true,否則返回 false。

該函式有兩個引數:ODBC 結果識別符號和可選的行號:

odbc_fetch_row($rs)


從記錄中取回欄位

odbc_result() 函式用於從記錄中讀取欄位。該函式有兩個引數:ODBC 結果識別符號和欄位編號或名稱。

下面的程式碼行從記錄中返回第一個欄位的值:

$compname=odbc_result($rs,1);

下面的程式碼行返回名為 "CompanyName" 的欄位的值:

$compname=odbc_result($rs,"CompanyName");


關閉 ODBC 連線

odbc_close() 函式用於關閉 ODBC 連線。

odbc_close($conn);


ODBC 例項

下面的例項展示瞭如何首先建立一個數據庫連線,接著建立一個結果集,然後在 HTML 表格中顯示資料。

<html>
<body>

<?php
$conn=odbc_connect('northwind','','');
if (!$conn)
{
    exit("連線失敗: " . $conn);
}

$sql="SELECT * FROM customers";
$rs=odbc_exec($conn,$sql);

if (!$rs)
{
    exit("SQL 語句錯誤");
}
echo "<table><tr>";
echo "<th>Companyname</th>";
echo "<th>Contactname</th></tr>";

while (odbc_fetch_row($rs))
{
    $compname=odbc_result($rs,"CompanyName");
    $conname=odbc_result($rs,"ContactName");
    echo "<tr><td>$compname</td>";
    echo "<td>$conname</td></tr>";
}
odbc_close($conn);
echo "</table>";
?>

</body>
</html>