次の方法で共有


DataSet スキーマ推論プロセスの概要

推論プロセスでは、まず XML ドキュメントから、どの要素がテーブルとして推論されるかが決定されます。 残りの XML から、推論プロセスによってそれらのテーブルの列が決定されます。 入れ子になったテーブルの場合、推論プロセスでは、入れ子になった DataRelationForeignKeyConstraint オブジェクトが生成されます。

推論規則の簡単な概要を次に示します。

  • 属性を持つ要素はテーブルとして推論されます。

  • 子要素を持つ要素は、テーブルとして推論されます。

  • 繰り返される要素は、1 つのテーブルとして推論されます。

  • ドキュメントまたはルート要素に属性がなく、列として推論される子要素がない場合は、 DataSetとして推論されます。 それ以外の場合、ドキュメント要素はテーブルとして推論されます。

  • 属性は列として推論されます。

  • 属性または子要素がなく、繰り返されない要素は、列として推論されます。

  • テーブルとしても推論される他の要素内で入れ子になったテーブルとして推論される要素の場合、2 つのテーブルの間に入れ子になった DataRelation が作成されます。 TableName_Idという名前 新しい主キー列が両方のテーブルに追加され、 DataRelation によって使用されます。 TableName_Id列を使用して、2 つのテーブル間に ForeignKeyConstraint が作成されます。

  • テーブルとして推論され、テキストを含むが子要素がない要素の場合は、各要素のテキスト に対して TableName_Text という名前の新しい列が作成されます。 要素がテーブルとして推論され、テキストがあり、子要素も含まれている場合、テキストは無視されます。

こちらも参照ください