DataReader を使用して複数のテーブルを DataSet に入力する
この記事では、複数のテーブルで構成される DataSet にデータを入力するという課題に取り組みます。 DataReader を使用して、それらの間の 1 対多の関係を維持します。
提供されたコード サンプルは、DataReader を使用して DataSet に 1 つのテーブルを入力する方法を示しています。この機能を複数のテーブルに拡張するには、次の 2 つのアプローチを提案します。
オプション 1: 複数のクエリ
個別のクエリを送信して各テーブルからデータを取得し、マッピングする生成されたテーブル名を DataSet 内で必要なテーブル名に変更します。
オプション 2: 複数の単一クエリSELECT ステートメント
複数の SELECT ステートメントを含む単一のクエリを作成し、データベース サーバーがすべてのリクエストを一度に処理できるようにします。ただし、結果のテーブルにはデフォルト名 (Table、Table1 など) が割り当てられることに注意してください。これは、SqlDataAdapter クラスの TableMappings プロパティを使用して意図した名前に明示的にマップできます。
これを示す例は次のとおりです。 2 番目のアプローチ:
SqlDataAdapter adapter = new SqlDataAdapter( "SELECT * FROM Customers; SELECT * FROM Orders", connection); adapter.TableMappings.Add("Table", "Customer"); adapter.TableMappings.Add("Table1", "Order"); adapter.Fill(ds);
これらの手法のいずれかを利用すると、テーブル間の関係を維持しながら DataReader を実行します。
以上がDataReader を使用して DataSet に複数のテーブルを設定するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。