ADOをNET 2.0のSqlCommandとSqlDataAdapterが提携

1498 ワード

プロジェクトのニーズに応じて、データベースから複数のデータテーブルを取得し、自分でコードを作成し、自分の望むフォーマットでASPに表示する必要がある場合があります.GridViewコントロールに直接バインドするのではなく、NET 2.0ページでは、以下の方法を参照できます.データベースの複数のtableからJoinデータを取得するには、取得した複数のrecord(数量不定)、複数のcolumnをカスタム形式でASP.に表示する.NETページでは、まず抽出したデータを、メモリの複数のDataTable(1つのDataTable配列)に一時的に保存して、所望のスタイルで表示することができます.まずSqlCommandを通して、データベースの複数のtableの中からJoinの得たデータを取得して、更にこのSqlCommandを1つのSqlDataAdapterに割り当てて、それからSqlDataAdapterのFill方法を通して、複数のtableから取ったデータを、メモリの中の複数のDataTableの中(1つのDataTable配列)に記入します;ADOである.NET 2.0では、DataTableをDataSetに添付する必要はなくなりました.重要なコードは次のとおりです.
SqlConnection conn = new SqlConnection(Web.Config          );
SqlDataAdapter da = new SqlDataAdapter();
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;

cmd.CommandText = "        SELECT   JOIN   SQL statement ; ";
cmd.CommandText += "        SELECT   JOIN   SQL statement";

da.SelectCommand = cmd;

DataTable[] dtArray = new DataTable[] { new DataTable("    SQL statement   table   "), new DataTable("    SQL statement   table   ") };

// Fill(startRecord, maxRecords, DataTable    )
da.Fill(0, 0, dtArray);

conn.Open();

//      DataTable (dtArray[0])             
for (int i = 0; i < dtArray[0].Rows.Count; i++)
{ 
  //         DataTable    ,               
}

//       DataTable     GridView   
GridView1.DataSource = dtArray[0].DefaultView;

ははは!