共用方式為


形狀 APPEND 子句

shape 命令的 APPEND 子句會將一個或多個資料行附加至 Recordset。 通常,這些欄是章節欄,這些欄參考子系 Recordset

語法

SHAPE [parent-command [[AS] parent-alias]] APPEND column-list  

描述

此子句的各部分如下:

父命令
零或下列其中一項(您可以完全省略 父命令):

  • 以大括弧 (“{}”) 括住的提供者命令,會傳回 Recordset 物件。 命令會發出給基礎數據提供者,而且其語法取決於該提供者的需求。 這通常是 SQL 語言,雖然 ADO 不需要任何特定的查詢語言。

  • 內嵌在括弧中的另一個圖形命令。

  • TABLE 關鍵詞,後面接著數據提供者中的數據表名稱。

父別名
可選的別名,指向 父 Recordset

欄位列表
下列其中一或多個項目:

  • 匯總欄。

  • 計算列。

  • 使用 NEW 子句建立的新欄。

  • 章節欄。 章節數據行定義以括弧 (“)” 括住。 請參閱下列語法。

SHAPE [parent-command [[AS] parent-alias]]  
   APPEND (child-recordset [ [[AS] child-alias]   
      RELATE parent-column TO child-column | PARAMETER param-number, ... ])  
   [[AS] chapter-alias]   
   [, ... ]  

備註

子記錄集

  • 以大括弧 (“{}”) 括住的提供者命令,會傳回 Recordset 物件。 命令會發出給基礎數據提供者,而且其語法取決於該提供者的需求。 這通常是 SQL 語言,雖然 ADO 不需要任何特定的查詢語言。

  • 內嵌在括弧中的另一個圖形命令。

  • Recordset的現有形狀名稱。

  • TABLE 關鍵詞,後面接著數據提供者中的數據表名稱。

子別名
指涉子記錄集 的別名。

父欄位
parent-command 所傳回的 Recordset 中的一個欄

子欄
子命令所傳回的 記錄集 中的一個欄位。

param-number
請參閱 參數化命令的作業

chapter-alias
指向附加至父項的章節欄位的別名。

注意

子句 「父欄位 TO 子欄位」實際上是一個清單,其中每個定義的關係以逗號分隔

注意

APPEND 關鍵詞後的子句實際上是一個清單,其中每個子句之間以逗號分隔,並定義要附加到父系的另一個欄位。

當您從使用者輸入建構提供者命令做為SHAPE命令的一部分時,SHAPE會將使用者提供的提供者命令視為不透明字串,並忠實地傳遞給提供者。 例如,在下列 SHAPE 命令中,

SHAPE {select * from t1} APPEND ({select * from t2} RELATE k1 TO k2)  

SHAPE 會執行兩個命令:select * from t1 和 (select * from t2 RELATE k1 TO k2)。 如果使用者提供由分號分隔的多個提供者命令所組成的複合命令,SHAPE 就無法區分差異。 因此,在下列 SHAPE 命令中,

SHAPE {select * from t1; drop table t1} APPEND ({select * from t2} RELATE k1 TO k2)  

SHAPE 執行 select * from t1; drop table t1,但select * from t2 RELATE k1 TO k2), 未意識到 drop table t1 是獨立的,並且在此案例中是危險的提供者命令。 應用程式必須一律驗證使用者輸入,以防止發生這類潛在的駭客攻擊。

本節包含下列主題。

另請參閱

數據成形範例
正式圖案文法
一般形狀命令