18-1 ODBC 與 DSN 簡介

當你的網頁資料量越來越多時,你就會發覺靜態的網頁實在不敷需求,而且維護不易,一個自然的解決方案,就是將資料放在資料庫中,並隨時將資料庫的資料即時調出,呈現於用戶端的網頁。同時,用戶端的輸入資料也可以即時送入資料庫,以便進行各種統計與運算。

將資料置於資料庫的好處很多,可列舉如下:

要學習 ASP 與資料庫整合,最主要有三大要點:

  1. 瞭解資料庫的基本概念。
  2. 瞭解 ASP 如何經由 ODBC 與資料庫溝通。
  3. 瞭解 如何使用 SQL 來對資料庫進行查詢、新增、修改等動作。
本章將針對第二及第三點來進行說明,至於第一點,則請各位讀者參考前一章。

首先我們來說明什麼是 ODBC,以及如何使用 ASP 來經由 ODBC 與資料庫溝通。ODBC 是 Open DataBase Connectivity 的簡稱,它是一個工業界的標準,可以看成是各家資料庫廠商所提供的一個「應用程式介面」(Application Program Interface,簡稱 API),可讓其他軟體或程式根據這個標準一致的程式介面,來對資料庫進行新增、讀取、修改、刪除等動作。這些對資料進行的動作,在資料庫的術語來講都是「查詢」(Query),而這些查詢動作都是根據 SQL 的標準資料庫語言來完成。有關 SQL 指令的詳細說明,我們會在本章後續小節詳述。

要讓 ASP 經由 ODBC 與資料庫溝通,有兩種基本方式:

  1. 直接指定資料庫在本機硬碟的路徑:此種方法較具彈性,整個應用程式目錄可在不同的伺服器中搬動,但能對資料庫做的設定比較有限。
  2. 指定DSN:我們必須在控制台設定「資料來源名稱」(Data Source Name,簡稱 DSN),以指定可經由 ODBC 連結的資料庫。此種作法較不具彈性,但卻能經由本機對資料庫進行比較完整的設定。

以這兩種方式來顯示資料庫於網頁的範例,將在下一節說明。

以下將以本機上的 Access 檔案 song01.mdb 為例,來說明如何在 64-bit Windows 7 設定 DSN。(如果你的作業系統是 Windows XP 或 Vista,或是這些平台的 32-bit 版本,這些步驟也是大同小異。)

  1. 首先,關閉所有已經開啟的資料庫。

  2. 從微軟視窗系統左下角的「開始」選單進行選取,順序為「開始/控制台/系統管理工具/資料來源 (ODBC)」,此時所打開的「ODBC資料來源管理員」,其外觀如下:

  3. 請確認你選擇的是「使用者資料來源名稱」,如上圖所示,此時會顯示所有已經設定好的資料來源

  4. 按下「新增」,此時會顯示「建立新資料來源」視窗,列出此機器已經安裝的ODBC驅動程式,如下:

  5. 請由上圖中選取合適的ODBC驅動程式,以配合你所使用的資料庫。在我們以下的說明,都是使用Access資料庫,所以請選取「Microsoft Access Driver (*.mdb, *.accdb)」,然後再按「完成」。(請特別注意:請不要選到其他類似的選項,例如「Driver Access dBASE Driver」或「Microsoft Access Text Driver」等,這些是不是我們要的!)

  6. 接著會跳出「ODBC Microsoft Access 設定」視窗,請在「資料來源名稱」填入「dsnSong01」,如下:

  7. 接著按下上圖中的「選取」,就可以開啟資料庫選擇視窗,請選擇 song01.mdb,並按下「確定」,如下:

    如果你使用的是網路上的資料庫伺服器,你就必須在上述視窗點選「網路」,以開啟「連線網路磁碟機」視窗,並填入資料庫所在的網路位置(或經由「瀏覽」按鈕來選取),即可完成設定。

  8. 此時在「ODBC資料來源管理員」就會出現 dsnSong01 的一筆記錄,如下:

    代表已經設定成功,此時可以按下「確定」,結束設定過程。

一旦設定完成,我們就可以在 ASP 內經由 DSN 來指定資料庫(可以是近端或是遠端),詳細說明及用法,請見下一小節。

有關資料庫的選擇,可說明如下:


JScript 程式設計與應用:用於伺服器端的 ASP 環境