0

DataTableSQL クエリからデータ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 番目の部分の値の順序が同じではありませんでした。

4

1 に答える 1

1

解決策: 私はバカです。別のテーブルから同じ値を取得するクエリに UNION があり、クエリの 2 番目の部分の値の順序が同じではありませんでした。

于 2013-09-11T08:43:47.763 に答える