特定の DataTable に対して設定された基準に基づいて ADO.NET DataRows カーソルを (SQL カーソルと同じように) 宣言します。
構文:
>>--EXEC ADO---.--------------------.--DECLARE datarows_name DATAROWS->
+-USING dataset_name-+
>--.------------------------------------.—-FROM datatable_name------->
| +--- , ---+ |
| V | |
+--FOR SELECT--column_name-----------+
>--.-----------------------------------.—---------------------------->
+-FOR-.-ADDED-------------.-DATAROWS+
+-CURRENT-----------+
+-DELETED-----------+
+-MODIFIED CURRENT--+
+-MODIFIED ORIGINAL-+
+-ORIGINAL----------+
+-UNCHANGED---------+
>-.----------------------------------------------------.--—END-EXEC--><
| |
+-WHERE search_conditions--.----------------------.--+
| +-ORDER BY sort_clause-+ |
| |
+-WHERE CHILDREN OF cursor_name (relation_name)------+
+-WHERE PARENTS OF cursor_name (relation_name}------+
+-ORDER BY sort_clause-------------------------------+
パラメーター:
dataset_name |
使用する DataSet 参照。dataset_name を指定しない場合は、現在の DataSet が使用されます。 |
datarows_name |
DataRows カーソルの名前。 |
column_name |
DataRows カーソルで指定する DataTable 内の列の名前。 |
FOR row_state DATAROWS |
row_state 値に基づいて DataTable で使用する DataRow を識別します。 |
datatable_name |
DataRows カーソルが定義される DataTable の名前。 |
search_conditions |
標準の SQL WHERE 句の後に続く任意の有効な式。 |
sort_clause |
標準の SQL ORDER BY 句の後に続く任意の有効な式。 |
cursor_name |
DataRows カーソルに親または子として関連付けられる DataRows カーソルの名前。 |
relation_name |
この DataRows カーソルと上記の cursor_name カーソル間の親子関係を指定する制約名。relation_name は DECLARE DATASET 文で定義します。 |
例:
EXEC ADO
DECLARE drOrder DATAROWS
FOR SELECT OrderID, OrderDate FROM Orders
WHERE CHILDREN OF drCust(custord)
END-EXEC
説明:
標準のカーソル操作文 (OPEN、FETCH、DELETE (位置指定)、UPDATE (位置指定) および CLOSE) は、ADO.NET DataRows カーソルにも適用できます。
標準の WHERE 句に加え、DECLARE DATAROWS 文では、WHERE CHILDREN および WHERE PARENTS 句を使用して関連する DataRows カーソルの親子関係もナビゲートできます。