型付けされた DataSet または型付けされていない DataSet を定義します。
構文:
DECLARE <typed> DATASET
>>--EXEC ADO---DECLARE dataset_name DATASET----------------------->
>--+-FROM dataset_xml_file_spec---------------------------------+
+-LIKE src_dataset_name--------------------------------------+
| |
| +---- , -----+ |
| V | |
+-FOR---datatable_name---.--------------.----.-------------.-+
+-optrelations-+ +optschemasave+
>--END-EXEC----><
where
optrelations:
>-.------------------------------------------------------------------------.--><
| |
| + ----------------- , ---------------------------------------------+ |
| V | |
+---.--------.-RELATION rel_name child_tbl (column_list)REFERENCES-> | |
+-NESTED-+ | |
>--parent_tbl (column_list)-.------------------.----------+---+
+optwithconstraints+
optschemasave:
>----.--------------------------------------.--------------------><
+-SAVE SCHEMA TO dataset_xml_file_spec-+
optwithconstraints:
>--.------------------------------------------------------------.-><
+-WITH CONSTRAINTS-.-------------.-.----------.-.----------.-+
+-accrej_rule-+ +-del_rule-+ +-upd_rule-+
accrej_rule:
>---ON ACCEPT OR REJECT -.-CASCADE---.----------------------------><
+-NO ACTION-+
del_rule:
>---ON DELETE -.-CASCADE-----.------------------------------------><
+-NO ACTION---+
+-SET DEFAULT-+
+-SET NULL----+
upd_rule:
>---ON UPDATE -.-CASCADE-----.------------------------------------><
+-NO ACTION---+
+-SET DEFAULT-+
+-SET NULL----+
DECLARE <untyped> DATASET
>>--EXEC ADO---DECLARE dataset_name UNTYPED DATASET----END-EXEC---><
パラメーター:
dataset_name |
宣言する DataSet。 |
dataset_xml_file_spec |
宣言される DataSet の特性を指定する DataSet XML ファイルの場所。 |
src_dataset_name |
宣言される DataSet の特性を指定する DataSet の名前。 |
datatable_name |
この DataSet に含める、宣言された DataTable。 |
rel_name |
リレーションの名前。 |
child_tbl (column_list) |
子キー (外部) を定義するテーブルと列の指定。 |
child_tbl (column_list) |
親キーを定義するテーブルと列の指定。 |
SAVE SCHEMA TO |
DataSet のスキーマを XSD ファイルに保存します。 |
例:
EXEC ADO
DECLARE ds DATASET
FOR Customers, Orders, "Order Details"
RELATION custord Orders(CustomerID) REFERENCES Customers(CustomerID),
RELATION orditems "Order Details"(OrderID) REFERENCES Orders(OrderID)
END-EXEC
EXEC ADO
DECLARE ds UNTYPED DATASET
END-EXEC
説明:
DataSet でスキーマを宣言すると (型付けされる)、その DataSet はコンパイル時にチェックされて、XSD ファイルに保存することもできます。DataSet でスキーマを宣言しない場合 (型付けされない)、コンパイル時のチェックは実行されません。
DataSet は、DataTable とそれらのテーブル間の関係で構成されます。
DECLARE DATASET 文で指定されたすべての DataTable には、対応する DECLARE DATATABLE が必要です。オプションで、RELATION 句を使用してこれらのテーブル間の親キーおよび子キーの関係を指定することもできます。
WITH CONSTRAINTS を指定すると、親および子の DataTable に主キーおよび外部キーの制約が (存在しない場合) それぞれ作成されます。WITH CONSTRAINTS を指定すると、親行に対する変更を関連の子行にも反映するかどうかを指定する規則を設定できます。