註解:

Dreamweaver CC (含) 以後版本的使用者介面已經簡化了。因此,您在 Dreamweaver CC 和更新版本中可能會找不到本文所描述的一些選項。如需詳細資訊,請參閱本文

關於 ASP 資料庫連線

ASP 應用程式必須透過開放式資料庫連線 (ODBC) 驅動程式或物件連結和內嵌資料庫 (OLE DB) 提供者,連線到資料庫。驅動程式或提供者是網路應用程式與資料庫通訊的解譯器。下表是可以配合 Microsoft Access、Microsoft SQL Server 以及 Oracle 資料庫使用的驅動程式:

資料庫

資料庫驅動程式

Microsoft Access

Microsoft Access Driver (ODBC)

Microsoft Jet Provider for Access (OLE DB)

Microsoft SQL Server

Microsoft SQL Server Driver (ODBC)

Microsoft SQL Server Provider (OLE DB)

Oracle

Microsoft Oracle Driver (ODBC)

Oracle Provider for OLE DB

您可以使用資料來源名稱 (DSN) 或連線字串來連線資料庫。如果您是透過 OLE DB 提供者或未安裝在 Windows 系統的 ODBC 驅動程式連線,就必須使用連線字串。

DSN 是由一個單字構成的識別符號 (如 myConnection),它會指向這個資料庫,並且包含連線這個資料庫所需的全部資訊。您必須在 Windows 中定義 DSN。如果您是透過安裝在 Windows 系統上的 ODBC 驅動程式連線,就可以使用 DSN。

連線字串是人工撰寫的運算式,用來識別資料庫並且列出連線到這個資料庫所需的資訊,如以下範例所示:

Driver={SQL Server};Server=Socrates;Database=AcmeMktg; 
UID=wiley;PWD=roadrunner

註解:

如果您是透過安裝在 Windows 系統上的 ODBC 驅動程式連線,則也可以使用連線字串,不過使用 DSN 會更簡單一些。

關於 OLE DB 連線

您可以使用 OLE DB 提供者和您的資料庫進行通訊 (只有在 Windows NT、2000 或 XP 中才能使用 OLE DB)。建立直接的資料庫專屬的 OLE DB 連線,可以消除網路應用程式與資料庫之間的 ODBC 層,改善連線的速度。

如果您不為資料庫指定 OLE DB 提供者,ASP 就會使用 ODBC 驅動程式的預設 OLE DB 提供者,和 ODBC 驅動程式進行通訊,後者再與資料庫進行通訊。

不同的資料庫有不同的 OLE DB 提供者。您可以在執行 IIS 的 Windows 電腦上,下載並安裝 Microsoft Data Access Components (MDAC) 2.5 和 2.7 套件,以取得 Microsoft Access 和 SQL Server 的 OLE DB 提供者。您可以從 Microsoft 網站免費下載 MDAC 套件。

註解:

安裝 MDAC 2.7 之前,請確定您安裝了 MDAC 2.5。

您可以從 Oracle 網站下載 Oracle 資料庫所需的 OLE DB 提供者。

在 Dreamweaver 中,您只要在連線字串中包含 Provider 參數,就可以建立 OLE DB 連線。例如,以下分別是 Access、SQL Server 和 Oracle 資料庫的常用 OLE DB 提供者參數:

Provider=Microsoft.Jet.OLEDB.4.0;... 
Provider=SQLOLEDB;... 
Provider=OraOLEDB;...

如需 OLE DB 提供者的參數值,請參閱提供者廠商的文件,或洽詢您的系統管理員。

關於連線字串

連線字串結合了您的網路應用程式連線到資料庫時所需的全部資訊。Dreamweaver 會將這個字串插入網頁的伺服器端 Script 中,以便稍後由應用程式伺服器進行處理。

Microsoft Access 和 SQL Server 資料庫的連線字串是由下列以分號分隔的參數組合構成:

提供者

指定資料庫的 OLE DB 提供者。例如,以下分別是 Access、SQL Server 和 Oracle 資料庫的常用 OLE DB 提供者參數:

Provider=Microsoft.Jet.OLEDB.4.0;... 
Provider=SQLOLEDB;... 
Provider=OraOLEDB;...

如需 OLE DB 提供者的參數值,請參閱提供者廠商的文件,或洽詢您的系統管理員。

如果您並未包含 Provider 參數,就會使用 ODBC 的預設 OLE DB 提供者,而且您必須為資料庫指定適當的 ODBC 驅動程式。

Driver

在沒有為資料庫指定 OLE DB 提供者時,指定所要使用的 ODBC 驅動程式。

Server

當網路應用程式在不同的伺服器上執行時,指定裝載 SQL Server 資料庫的伺服器。

Database

SQL Server 資料庫的名稱。

DBQ

檔案資料庫 (例如在 Microsoft Access 中所建立者) 的路徑。這個路徑在裝載資料庫檔案的伺服器上。

UID

指定使用者名稱。

PWD

指定使用者密碼。

DSN

資料來源名稱 (如果使用的話)。依據您在伺服器上定義 DSN 的方式,或許可以省略連線字串的其他參數。例如,如果您在建立 DSN 時定義了其他參數,DSN=Results 就可以是有效的連線字串。

其他種類的資料庫連線字串不一定會使用上述參數,或許會有不同的參數名稱或用法。如需詳細資訊,請參閱資料庫廠商的文件,或洽詢您的系統管理員。

以下連線字串範例會建立 ODBC 連線,連線到名為 trees.mdb 的 Access 資料庫:

Driver={Microsoft Access Driver (*.mdb)}; 
DBQ=C:\Inetpub\wwwroot\Research\trees.mdb

以下連線字串範例會建立 OLE DB 連線,連線到 Gojira 伺服器上名為 Mothra 的 SQL Server 資料庫:

Provider=SQLOLEDB;Server=Gojira;Database=Mothra;UID=jsmith; 
PWD=orlando8

使用本機 DSN 建立連線

註解:

本節假設您已經設定好 ASP 應用程式, 並且假設在您的本機電腦或者您擁有網路或 FTP 存取權的系統上已經設定好資料庫。

您可以使用資料來源名稱 (DSN) 在網路應用程式和資料庫之間建立 ODBC 連線。DSN 是個名稱,包含使用 ODBC 驅動程式連線到特定資料庫時所需的所有參數。

因為在 DSN 中僅能指定 ODBC 驅動程式,如果您要使用 OLE DB 提供者,就必須使用連線字串。

您可以使用本機定義的 DSN,在 Dreamweaver 中建立資料庫連線。

  1. 在執行 Dreamweaver 的 Windows 電腦上定義 DSN。

    如需相關說明,請參閱 Microsoft 網站上的下列文章:

  2. 在 Dreamweaver 中開啟 ASP 頁面,然後開啟「資料庫」面板 (「視窗 > 資料庫」)。
  3. 按一下面板上的加號 (+) 按鈕,並從選單中選取「資料來源名稱 (DSN)」。
  4. 輸入新連線的名稱,請勿包含空格或特殊字元。
  5. 選取「使用本機 DSN」選項,然後從「資料來源名稱 (DSN)」選單中選擇您要使用的 DSN。

    如果您要使用本機 DSN,但是尚未定義任何 DSN,請按一下「定義」以開啟「Windows ODBC 資料來源管理員」。

  6. 完成「使用者名稱」和「密碼」方塊。
  7. 您可以按一下「進階」並輸入綱要或目錄名稱,以限制 Dreamweaver 在設計階段擷取資料庫項目的數目。

    註解:

    您無法在 Microsoft Access 中建立綱要或目錄。

  8. 按一下「測試」連線至資料庫,然後按一下「確定」。如果連線失敗,請再次檢查連線字串,或檢查 Dreamweaver 用來處理動態網頁之測試資料夾的設定。

使用遠端 DSN 建立連線

註解:

本節假設您已經設定好 ASP 應用程式, 並且假設在您的本機電腦或者您擁有網路或 FTP 存取權的系統上已經設定好資料庫。

註解:

Dreamweaver 只能擷取使用「Windows ODBC 資料來源管理員」建立的伺服器 DSN。

您可以使用遠端電腦上定義的 DSN 在 Dreamweaver 中建立資料庫連線。如果您要使用遠端 DSN,DSN 必須定義在執行應用程式伺服器 (可能為 IIS) 的 Windows 電腦上。

註解:

因為在 DSN 中僅能指定 ODBC 驅動程式,如果您要使用 OLE DB 提供者,就必須使用連線字串。

  1. 在執行應用程式伺服器的遠端系統上定義 DSN。

    如需相關說明,請參閱 Microsoft 網站上的下列文章:

  2. 在 Dreamweaver 中開啟 ASP 頁面,然後開啟「資料庫」面板 (「視窗 > 資料庫」)。
  3. 按一下面板上的加號 (+) 按鈕,並從選單中選取「資料來源名稱 (DSN)」。
  4. 輸入新連線的名稱,請勿包含空格或特殊字元。
  5. 選取「使用測試伺服器上的 DSN」。

    註解:

    Macintosh 使用者可以忽略這個步驟,因為所有資料庫連線都是使用應用程式伺服器上的 DSN。

  6. 輸入 DSN 或按一下 DSN 按鈕以連線到伺服器,選取您要使用的資料庫的 DSN,然後完成選項。
  7. 完成「使用者名稱」和「密碼」方塊。
  8. 您可以按一下「進階」並輸入綱要或目錄名稱,以限制 Dreamweaver 在設計階段擷取資料庫項目的數目。

    註解:

    您無法在 Microsoft Access 中建立綱要或目錄。

  9. 按一下「測試」連線至資料庫,然後按一下「確定」。如果連線失敗,請再次檢查連線字串,或檢查 Dreamweaver 用來處理動態網頁之測試資料夾的設定。

使用連線字串建立連線

您可以使用無 DSN 連線在網路應用程式和資料庫之間建立 ODBC 或 OLE DB 連線。若要建立這種類型的連線,請使用連線字串。

  1. 在 Dreamweaver 中開啟 ASP 頁面,然後開啟「資料庫」面板 (「視窗 > 資料庫」)。
  2. 按一下面板上的加號 (+) 按鈕,並從選單中選取「自訂連線字串」,完成選項,然後按一下「確定」。
  3. 輸入新連線的名稱,請勿包含空格或特殊字元。
  4. 輸入資料庫的連線字串。如果您沒有在連線字串中指定 OLE DB 提供者,也就是說,如果您未包含 Provider 參數,ASP 將會自動使用 ODBC 驅動程式的 OLE DB 提供者。在這種情況下,您必須為資料庫指定適當的 ODBC 驅動程式。

    如果您的網站是由 ISP 裝載,而且您不知道資料庫的完整路徑,請在連線字串中使用 ASP 伺服器物件的 MapPath 方法。

  5. 如果連線字串中指定的資料庫驅動程式不是安裝在與 Dreamweaver 相同的電腦上,請選取「使用測試伺服器上的驅動程式」。

    註解:

    Macintosh 使用者可以忽略這個步驟,因為所有資料庫連線都是使用應用程式伺服器。

  6. 您可以按一下「進階」並輸入綱要或目錄名稱,以限制 Dreamweaver 在設計階段擷取資料庫項目的數目。

    註解:

    您無法在 Microsoft Access 中建立綱要或目錄。

  7. 按一下「測試」連線至資料庫,然後按一下「確定」。如果連線失敗,請再次檢查連線字串,或檢查 Dreamweaver 用來處理動態網頁之測試資料夾的設定。

連線 ISP 上的資料庫

如果您是使用商業 Internet 服務供應商 (ISP) 的 ASP 開發人員,您通常不會知道上傳檔案 (包括資料庫檔案或檔案) 的實際路徑。

如果您的 ISP 沒有為您定義 DSN 或者動作太慢,您必須另謀他途來建立資料庫檔案的連線。另一種方式是對資料庫檔案建立無 DSN 連線,但是您必須知道資料庫檔案在 ISP 伺服器上的實際路徑,才能定義這種連線。

您可以使用 ASP 伺服器物件的 MapPath 方法,取得資料庫檔案在伺服器上的實際路徑。

註解:

本節所討論的技巧只適用於檔案資料庫,例如資料以 .mdb 檔案儲存的 Microsoft Access 資料庫。

了解實際路徑與虛擬路徑

使用 Dreamweaver 將檔案上傳到遠端伺服器之後,這些檔案會存放在伺服器本機目錄樹狀結構的資料夾中。例如,在執行 Microsoft IIS 的伺服器上,您的首頁路徑可能與下列類似:

c:\Inetpub\wwwroot\accounts\users\jsmith\index.htm

這個路徑就是檔案的實際路徑。

但是,開啟檔案的 URL 並不是使用這個實際路徑, 它是使用伺服器或網域名稱,後面加上虛擬路徑,如以下範例所示:

www.plutoserve.com/jsmith/index.htm

虛擬路徑 /jsmith/index.htm 在這裡就是代表實際路徑 c:\Inetpub\wwwroot\accounts\users\jsmith\index.htm。

使用虛擬路徑尋找檔案的實際路徑

如果您是使用 ISP,您不一定會知道上傳檔案的實際路徑。ISP 通常會提供 FTP 主機,可能還有主機目錄,以及登入名稱和密碼。ISP 也會指定一個 URL 來檢視您在 Internet 上的網頁,例如 www.plutoserve.com/jsmith/。

如果您知道這個 URL,就可以取得檔案的虛擬路徑,也就是 URL 中位於伺服器或網域名稱後面的路徑。知道虛擬路徑之後,您就可以使用 MapPath 方法。

MapPath 方法將虛擬路徑視為引數,並傳回檔案的實際路徑與檔案名稱。以下就是這個方法的語法:

Server.MapPath("/virtualpath")

假設檔案的虛擬路徑為 /jsmith/index.htm,下列運算式將會傳回它的實際路徑:

Server.MapPath("/jsmith/index.htm")

您可以對 MapPath 方法進行實驗,如下所示。

  1. 在 Dreamweaver 中開啟 ASP 網頁,並且切換到「程式碼」檢視 (「檢視 > 程式碼」)。
  2. 在網頁的 HTML 程式碼中輸入下列運算式。
    <%Response.Write(stringvariable)%>
  3. 使用 MapPath 方法取得 stringvariable 引數的值。

    以下是一個範例:

    <% Response.Write(Server.MapPath("/jsmith/index.htm")) %>
  4. 切換至「即時檢視」(「檢視 > 即時檢視」),以檢視頁面。

    頁面會顯示應用程式伺服器上檔案的實際路徑,例如:

    c:\Inetpub\wwwroot\accounts\users\jsmith\index.htm

    如需 MapPath 方法的詳細資訊,請參考 Microsoft IIS 隨附的線上文件。

使用虛擬路徑連線資料庫

若要撰寫遠端伺服器上資料庫檔案的無 DSN 連線字串,您必須知道這個檔案的實際路徑。下列範例是典型 Microsoft Access 資料庫的無 DSN 連線字串:

Driver={Microsoft Access Driver (*.mdb)}; 
DBQ=c:\Inetpub\wwwroot\accounts\users\jsmith\data\statistics.mdb

如果您不知道遠端伺服器上檔案的實際路徑,可以在連線字串中使用 MapPath 方法取得路徑。

  1. 將資料庫檔上傳到遠端伺服器,並記下其虛擬路徑 (例如,/jsmith/data/statistics.mdb)。
  2. 在 Dreamweaver 中開啟 ASP 頁面,然後開啟「資料庫」面板 (「視窗 > 資料庫」)。
  3. 按一下面板上的加號 (+) 按鈕,並從選單中選取「自訂連線字串」。
  4. 輸入新連線的名稱,請勿包含空格或特殊字元。
  5. 輸入連線字串並使用 MapPath 方法,提供 DBQ 參數。

    假設 Microsoft Access 資料庫的虛擬路徑為 /jsmith/data/statistics.mdb。如果您使用 VBScript 做為 Script 語言的話,連線字串可以表示如下:

    “Driver={Microsoft Access Driver (*.mdb)};DBQ=” & Server.MapPath¬ 
    ("/jsmith/data/statistics.mdb")

    & 符號是用來連接 (結合) 兩個字串。第一個字串是以引號括住,第二個字串則是由 Server.MapPath 運算式傳回。這兩個字串結合起來,就產生了下面這個字串:

    Driver={Microsoft Access Driver (*.mdb)}; 
    DBQ=C:\Inetpub\wwwroot\accounts\users\jsmith\data\statistics.mdb

    如果您使用 JavaScript,除了用加號 (+) 代替 & 符號來連接兩個字串外,下列運算式與上述運算式是完全相同的:

    “Driver={Microsoft Access Driver (*.mdb)};DBQ=” + Server.MapPath¬ 
    ("/jsmith/data/statistics.mdb")
  6. 選取「使用測試伺服器上的驅動程式」,按一下「測試」,然後按一下「確定」。

    註解:

    Macintosh 使用者可以忽略這個步驟,因為所有資料庫連線都是使用應用程式伺服器。

    註解:

    如果連線失敗,請再次檢查連線字串或連絡 ISP,確定遠端伺服器上已安裝連線字串中指定的資料庫驅動程式。同時查證一下 ISP 是否擁有這個驅動程式的最新版本。例如,以 Microsoft Access 2000 建立的資料庫無法與 Microsoft Access Driver 3.5 運作。您需要 Microsoft Access Driver 4.0 或更新版本。

  7. 更新現有動態網頁的資料庫連線 (在 Dreamweaver 中開啟網頁,按兩下「繫結」面板或「伺服器行為」面板中的資料集名稱,然後從「連線」選單選取剛剛建立的連線),並在任何新建立的網頁中使用新連線。

編輯或刪除資料庫連線

當您建立資料庫連線時,Dreamweaver 會將連線資訊儲存在網站本機根資料夾之 Connections 子資料夾的包含檔案中。您可以手動或依照下面的方式編輯或刪除檔案中的連線資訊。

編輯連線

  1. 在 Dreamweaver 中開啟 ASP 頁面,然後開啟「資料庫」面板 (「視窗 > 資料庫」)。
  2. 用滑鼠右鍵按一下 (Windows) 或按 Control+按一下 (Macintosh) 連線,再從選單中選取「編輯連線」。
  3. 編輯連線資訊,然後按一下「確定」。

    Dreamweaver 會更新包含檔案,這個檔案會更新網站中使用該連線的所有頁面。

刪除連線

  1. 在 Dreamweaver 中開啟 ASP 頁面,然後開啟「資料庫」面板 (「視窗 > 資料庫」)。
  2. 用滑鼠右鍵按一下 (Windows) 或按 Control+按一下 (Macintosh) 連線,再從選單中選取「刪除連線」。
  3. 在出現的對話方塊中,確認您要刪除的連線。

    註解:

    為了避免在刪除連線後發生錯誤,請在「資料繫結」面板中按兩下資料集的名稱,並選擇新的連線,更新所有使用舊連線的資料集。

此産品由 Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License 授權  Creative Commons 條款未涵蓋 Twitter™ 與 Facebook 文章。

法律說明   |   線上隱私權政策