DataTable
SQL クエリからデータDataGridView
を入力し、そのテーブルからデータを取得します。
dataGridView1.DataSource = new BindingSource(t,null);
このテーブルには 12 列あります。何があっても、最初の 4 つと最後の 4 つが正しく表示されます。しかし、5 番目の値が null である行では、6 番目の値は「前進」です。
通常の場合:
val1, val2, val3, val4, val5, val6, val7, val8, val9, val10, val11, val12
val5 が null の場合:
val1, val2, val3, val4, val6, val7, val8, null, val9, val10, val11, val12
どうした?
編集: クエリ:
using (SqlConnection c = new SqlConnection(qString))
{
c.Open();
// use a SqlAdapter to execute the query
using (SqlDataAdapter a = new SqlDataAdapter("SELECT val1, val2, val3, val4, val5, val6, val7, val8, val9, val10, val11, val12 FROM table WHERE %CONDITIONS%", c))
{
// fill a data table
var t = new DataTable();
a.Fill(t);
dataGridView1.DataSource = new BindingSource(t, null);
}
}
解決策: 私はバカです。別のテーブルから同じ値を取得するクエリがUNION
あり、クエリの 2 番目の部分の値の順序が同じではありませんでした。