數據成形會定義成形 Recordset 的數據行、數據行所代表之實體之間的關聯性,以及 Recordset 填入數據的方式。
形狀的 Recordset 可以包含下列類型的數據行。
| 欄類型 | 說明 |
|---|---|
| 數據 | 查詢命令從數據提供者、數據表或其他已成形的 Recordset 中返回的 Recordset 字段。 |
| 章 | 另一個 Recordset 的參考,稱為 章節。 Chapter 數據行可讓您定義 父子 關聯性,其中 父 系是包含章節數據行的 Recordset , 而子 系則是章節所代表的 Recordset 。 |
| 彙總 | 數據行的值是藉由在子 Recordset 的所有數據列或所有數據列上執行聚合函數來衍生。 (請參閱下列主題中的聚合函數: 聚合函數、CALC 函數和 NEW 關鍵詞。 |
| 匯出表達式 | 數據列的值是藉由計算 Recordset 中相同數據行的 Visual Basic for Applications 表達式來衍生。 表達式是 CALC 函式的自變數。 請參閱下列主題中的計算表達式:聚合函數、CALC 函數和 NEW 關鍵詞 以及 Visual Basic for Applications 函數。 |
| 新 | 空白、捏造的欄位,稍後可以填入數據。 欄位是使用 NEW 關鍵詞來定義。 (請參閱下列主題中的 NEW 關鍵詞 :聚合函數、CALC 函數和 NEW 關鍵詞。 |
shape 命令可以包含一個子句,該子句指定一個查詢命令給基礎資料提供者,該提供者將傳回一個 Recordset 對象。 查詢的語法取決於基礎數據提供者的需求。 這通常是 SQL,雖然 ADO 不需要使用任何特定的查詢語言。
Shape 命令可由 Recordset 對象發出,或藉由設定 Command 物件的 CommandText 屬性,然後呼叫 Execute 方法。
您可以使用 SQL JOIN 子句來關聯兩個數據表;不過,階層 式 Recordset 可以更有效率地表示資訊。 JOIN 所建立之Recordset的每個資料列都會重複來自其中一個資料表的資訊。 階層式 Recordset 對於多個子 Recordset 物件,只有一個父 Recordset。
圖形命令可以是巢狀結構的。 也就是說, 父命令 或 子命令 本身可能是另一個圖形命令。
形狀提供者始終會返回客戶端游標,即使使用者指定了adUseServer的游標位置。
您可以透過程式設計方式或透過適當的視覺控件,存取形狀化的 Recordset 元件。
Microsoft 提供了一種視覺工具來生成形狀命令(請參閱 Visual Basic 6 文檔中的 數據環境設計器),並提供另一個顯示階層式指標的工具(請參閱 Visual Basic 6 文檔中的《使用 Microsoft 階層式 Flexgrid 控件》)。
如需巡覽階層式 Recordset的相關信息,請參閱 存取階層式 Recordset 中的數據列。
如需語法正確圖形命令的精確資訊,請參閱 正式圖案文法。
本節包含下列主題。