使用手冊 取消

在 Dreamweaver 中使用 ASP 命令修改資料庫

 

 

了解如何在 Dreamweaver 中使用 ASP 命令修改資料庫以及新增和執行預存程序。

註解:

Dreamweaver 和更高版本的用戶介面已經簡化。因此,您在 Dreamweaver 和更高版本中可能會找不到本文所描述的一些選項。如需詳細資訊,請參閱本文

關於 ASP 命令物件

「ASP 命令物件」是一種可在資料庫上進行某種作業的伺服器物件。 物件可以包含任何有效的 SQL 陳述式,包括可回傳資料集的陳述式,或是可在資料庫中插入、更新或刪除記錄的陳述式。如果 SQL 陳述式會在表格中新增或刪除欄,則命令物件也可以更改資料庫的結構。您也可以使用命令物件在資料庫中執行預存程序。

重複使用命令物件的好處是,應用程式伺服器可以使用一套經過編譯的物件,重複執行命令數次。只要將「命令」物件的「就緒」屬性設定為 true,便能重複使用命令,如以下的 VBScript 陳述式所示:

mycommand.Prepared = true
mycommand.Prepared = true
mycommand.Prepared = true

如果您知道將會需要執行命令許多次,那麼使用編譯過的單一物件版本,將可使資料庫的運作更有效率。

註解:

但並非所有資料庫供應商都能支援就緒命令。如果您的資料庫無法支援這個命令,則在將這個屬性設定為 true 時就會傳回錯誤。資料庫甚至可能忽略使命令就緒的要求,而將「就緒」屬性設定為 false

命令物件雖然是由 ASP 頁面上的 Script 所建立,但是 Dreamweaver 讓您不需另外撰寫任何一行 ASP 程式碼,就能建立命令物件。

使用 ASP 命令修改資料庫

您可以使用 Dreamweaver 建立可在資料庫中插入、更新或刪除記錄的 ASP 命令物件。您必須提供可在資料庫中執行作業的命令物件 (包含 SQL 陳述式和預存程序)。

  1. 在 Dreamweaver 中開啟要執行命令的 ASP 頁面。
  2. 開啟「伺服器行為」面板 (「視窗>伺服器行為」),按一下加號 (+) 按鈕,再選取「命令」。
  3. 輸入命令的名稱、選取連至資料庫 (其中含有您要編輯的記錄) 的連線,然後選取您希望這個命令執行的編輯作業:「插入」、「更新」或「刪除」。

    Dreamweaver 會依據您選取的作業類型啟動 SQL 陳述式。例如,如果您選取「插入」,則對話框看起來就像下列範例一般:

    輸入 ASP 命令
    輸入 ASP 命令

  4. 完成 SQL 陳述式。

    如需撰寫可修改資料庫之 SQL 陳述式的詳細資訊,請參閱《Transact-SQL》手冊。

  5. 請使用「變數」區域定義 SQL 變數。提供名稱與執行階段值。指定每個用來避免資料隱碼攻擊的變數類型與大小。

    下列範例顯示含有三個 SQL 變數的「插入」陳述式。這些變數的值都是由傳送至頁面的 URL 參數 (在「變數」區域的「執行階段值」欄中所定義) 所提供。

    包含三個 SQL 變數的 Insert 陳述式
    包含三個 SQL 變數的 Insert 陳述式

    若要取得「大小」值,請使用 Dreamweaver 的「資料庫」面板。在「資料庫」面板中找到您的資料庫並把它展開。接下來,找到您正在使用的表格並把它展開。表格會列出欄位的大小。例如,可能顯示 ADDRESS (WChar 50)。在此範例中,大小為 50。您可以在自己的資料庫應用程式中找到大小值。

    註解:

    不管是「數值」、「Boolean」,還是日期/時間類型,一律使用 -1 做為大小值。

    若需決定「類型」值,請參閱下列表格:

    資料庫中的類型

    Dreamweaver 中的類型

    大小

    數值 (MS Access、MS SQL Server、MySQL)

    Double

    -1

    Boolean、Yes/No (MS Access、MS SQL Server、MySQL)

    Double

    -1

    日期/時間 (MS Access、MS SQL Server、MySQL)

    DBTimeStamp

    -1

    其他所有的文字欄位類型,包括 MySQL 文字資料類型 (char、varchar 與 longtext)

    LongVarChar

    檢查資料庫表格

    文字 (MS Access) 或 nvarchar、nchar (MS SQL Server)

    VarWChar

    檢查資料庫表格

    Memo (MS Access)、ntext (MS SQL Server),或是支援大量文字的欄位

    LongVarWChar

    1073741823

    如需有關 SQL 變數類型及大小的詳細資訊,請參閱 www.adobe.com/go/4e6b330a

  6. 請關閉此對話框。

    Dreamweaver 會在頁面中插入 ASP 程式碼,在伺服器上執行此程式碼時,就會建立可在資料庫中插入、更新或刪除記錄的命令。

    根據預設,程式碼會將「命令」物件的「就緒」屬性設定為 true,這樣在每次執行命令時,應用程式伺服器都會重複使用物件的單一編譯版本。若要變更這個設定,請切換為「程式碼」檢視並將「就緒」屬性變更為 false

  7. 建立一個含有 HTML 表單的頁面,方便使用者輸入記錄資料。HTML 表單中會包含三個文字欄位 (txtCity、txtAddress 和 txtPhone) 以及一個送出按鈕。這個表單會使用 GET 方法,並將文字欄位值送出至包含此命令的頁面。

關於預存程序

除了使用伺服器行為來建立修改資料庫的頁面,您也可以使用資料庫操作物件 (例如預存程序或 ASP 命令物件) 來建立頁面。

「預存程序」是能在資料庫執行某種作業,且可重複使用的資料庫項目。 在預存程序中含有 SQL 程式碼,可以插入、更新或刪除記錄。預存程序也可以更改資料庫本身的結構。例如,您可以使用預存程序加入表格欄,甚至刪除整個表格。

預存程序也可以呼叫另一個預存程序,接受輸入參數,將多個數值以輸出參數的形式回傳至呼叫程序中的預存程序。

重複使用預存程序的好處是,您可以重複使用一套經過編譯的程序,執行數次資料庫作業。如果您知道將會需要執行某項資料庫作業許多次,或是有許多不同應用程式會執行相同的作業,那麼使用預存程序執行這項作業,會使資料庫運作更有效率。

註解:

MySQL 以及 Microsoft Access 資料庫並不支援預存程序。

加入預存程序 (ColdFusion) (CS6)

您可以使用預存程序修改資料庫。「預存程序」是能在資料庫執行某種作業,且可重複使用的資料庫項目。

在使用預存程序修改資料庫之前,請先確定預存程序含有可以修改資料庫的 SQL。若要在資料庫中建立並儲存預存程序,請查詢資料庫的說明文件或是完整的 Transact-SQL 手冊。

  1. 在 Dreamweaver 中開啟要執行預存程序的頁面。
  2. 在「繫結」面板 (「視窗>繫結」) 中,按一下加號 (+) 按鈕,然後選取「預存程序」。
  3. 在「資料來源」彈出式選單中,選取含有預存程序的資料庫連線。
  4. 輸入 ColdFusion 資料來源的使用者名稱和密碼。
  5. 從「程序」彈出式選單選取預存程序。

    Dreamweaver 會自動填入所有參數。

  6. 如果需要進行變更,請選取參數,再按一下「編輯」。

    「編輯預存程序變數」對話方塊便會出現。您正在編輯的變數名稱會出現在「名稱」方塊中。

    註解:

    任何預存程序輸入參數您都必須輸入測試值。

  7. 視需要進行變更:
    • 從彈出式選單中選取「方向」。預存程序可以有輸入值、輸出值,或兩者都有。

    • 從彈出式選單中選取 SQL 類型。輸入傳回變數、執行階段值和測試值。

  8. 如果預存程序需要參數,請按一下加號 (+) 以新增頁面參數。
    註解:

    您必須針對每一個預存程序參數回傳值,輸入對應的頁面參數。如果沒有對應的回傳值,請不要新增頁面參數。

    如果需要,請再按一下加號 (+) 按鈕新增其他頁面參數。

  9. 如果需要,您可選取頁面參數,並按一下減號 (-) 按鈕刪除參數,或是按一下「編輯」以變更參數。
  10. 選取「傳回資料集名稱」選項,然後輸入資料集的名稱;如果預存程序會傳回資料集,請按一下「測試」按鈕查看該預存程序所傳回的資料集。

    Dreamweaver 會執行預存程序並顯示資料集 (如果有)。

    註解:

    如果預存程序會傳回資料集且需要參數,您必須在「變數」方塊的「預設值」欄中輸入值,才能測試預存程序。

    註解:

    您可以使用不同的測試值,來產生不同的資料集。若要變更測試值,請按一下「參數」的「編輯」按鈕,然後變更測試值;或按一下「頁面參數」的「編輯」按鈕,然後變更預設值。

  11. 如果預存程序會傳回狀態碼回傳值,請選取「傳回狀態碼名稱」選項輸入狀態碼的名稱。按一下「確定」。

    關閉這個方塊之後,Dreamweaver 會在頁面中插入 ColdFusion 程式碼,這個程式碼在伺服器上執行時,將會呼叫資料庫中的預存程序。預存程序就會執行如插入記錄之類的資料庫作業。

    如果預存程序需要參數,您可以建立收集所需參數值的頁面,再將參數送至含有預存程序的頁面。例如,您可以建立頁面,並使用 URL 參數或 HTML 表單向使用者取得參數值。

執行預存程序 (ASP) (CS6)

您必須先在 ASP 頁面中加入命令物件,才能執行預存程序。如需有關命令物件的詳細資訊,請參閱關於 ASP 命令物件

  1. 在 Dreamweaver 中開啟要執行預存程序的頁面。
  2. 在「繫結」面板 (「視窗>繫結」) 中,按一下加號 (+) 按鈕,然後選取「命令 (預存程序)」。

    「命令」對話方塊便會出現。

  3. 輸入命令的名稱、選取含有預存程序的資料庫連線,然後從「類型」彈出式選單中選取「預存程序」。
  4. 選取預存程序時,請展開「資料庫項目」方塊中的「預存程序」分支,從清單中選取預存程序,再按下「程序」按鈕。
  5. 在「變數」表格中輸入必要的參數。

    您不需要為任何 RETURN_VALUE 變數輸入任何參數。

  6. 按一下「確定」。

    在關閉對話方塊之後,ASP 程式碼便會插入您的頁面中。當程式碼在伺服器上執行時,程式碼將會建立執行資料庫預存程序的命令物件。預存程序就會執行如插入記錄之類的資料庫作業。

    根據預設,程式碼會將「命令」物件的「就緒」屬性設定為 true,這樣在每次執行預存程序時,應用程式伺服器就會重複使用物件的單一編譯版本。如果您知道將會需要執行某項命令許多次,那麼使用經過編譯的物件將可使資料庫的運作更有效率。然而如果命令只會執行一兩次,那麼使用這種物件反而會降低網路應用程式的速度,因為系統必須暫停以編譯該命令。若要變更這個設定,請切換為「程式碼」檢視並將「就緒」屬性變更為 false

    註解:

    但並非所有資料庫供應商都能支援就緒命令。如果您使用的資料庫不支援此功能,在執行頁面時可能會看到錯誤訊息。切換為「程式碼」檢視,並將「就緒」屬性變更為 false

    如果預存程序需要參數,您可以建立收集所需參數值的頁面,再將參數送至含有預存程序的頁面。例如,您可以建立頁面,並使用 URL 參數或 HTML 表單向使用者取得參數值。

更快、更輕鬆地獲得協助

新的使用者?