OleDbDataReaderから重複を排除したいと思います。 簡単ですが、私のホイールを回転させています。どんな助けもありがとう!所有者は、その1つの列のみを取得しているあなたのコードに必要なだけの列をC#コンボボックスから重複した値を削除するにはどうすればよいですか?
select distinct Owner from PPAPdatabase
代わりの
select * from PPAPdatabase
をしてDISTINCT句を適用します。
private void Database_Load(object sender, EventArgs e)
{
try
{
connection.Open();
OleDbCommand command = new OleDbCommand();
command.Connection = connection;
string query = "select * from PPAPdatabase";
command.CommandText = query;
OleDbDataAdapter da = new OleDbDataAdapter(command);
dt = new DataTable();
da.Fill(dt);
dataGridView1.DataSource = dt;
OleDbDataReader reader = command.ExecuteReader();
while (reader.Read())
{
comboBox_Owner.Items.Add(reader["Owner"].ToString());
}
なぜ追加のリーダーを行うことができますか?なぜ同じデータテーブルではないのですか? –
私はそれを行うためにデータベースを使用したいと思います。それに適した選択された個別のクエリを作成するだけです。 LINQを使用してコード内で行うこともできますが、この例では何の意味もありません。例えば'OwnerがnullでないPPAPdatabaseから別個のオーナーを選択する ' – ManoDestra
' comboBox_Owner.Items.Clear() 'を使ってメソッドの先頭にあるComboBoxを最初にクリアし、SQLが' Ownerを持たないPPAPdatabaseから別個のオーナーを選択するように修正する「ヌル」。また、データソースを一度しか埋める必要はありません。実際には読者も行う必要はありません。リーダーまたはデータソースメソッドのいずれかを使用します。仕事が完了:) – ManoDestra