mySqlDataReaderを使用して2つのテーブルを返し、結果を2つのデータテーブルにロードします。MySqlDataReaderを使用して複数のテーブルを返すにはどうすればよいですか?
using (MySqlConnection connMySql = new MySqlConnection(global.g_connString))
{
MySqlCommand cmd = connMySql.CreateCommand();
cmd.CommandText = @"
SELECT * FROM table1;
SELECT * FROM table2;
";
connMySql.Open();
using (MySqlDataReader dr = cmd.ExecuteReader())
{
DataTable dt1 = new DataTable();
dt1.Load(dr);
dr.NextResult();
DataTable dt2 = new DataTable();
dt2.Load(dr);
gridView1.DataSource = dt1;
gridView1.DataBind();
gridView2.DataSource = dt2;
gridView2.DataBind();
}
ただし、これを実行すると、1つのgridViewだけが設定されます。この方法でNextResultを使用することはできますか?これを実現するにはより良い方法がありますか?事前に
おかげで、
ベン
MS-SQLの場合、connectionStringにフラグ(MultipleActiveResultSets)が必要です。 MySqlプロバイダーのようなものは何ですか? –
@HenkそのクエリはMARSを必要としません。テーブルは連続しています。 –