Hallo zusammen,
ich möchte gerne ein Datagridview mit aktuellen Daten aus einem SQL Server laden.
Das ganze mache ich folgender maßen.
Einmalig:
und alle 10 Sekunden möchte ich es updaten:
Mein Problem ist nun, dass die richtigen Zeilen geupdatet werden, die, die aber in der SQL-Tabelle nicht mehr drin sind, bleiben im Grid.
Es kommen also neue hinzu (KEINE DOPPELTEN), geändert werden auch die richtigen Zeilen nur gelöscht nicht.
Ich hoffe mir kann einer helfen.
ich möchte gerne ein Datagridview mit aktuellen Daten aus einem SQL Server laden.
Das ganze mache ich folgender maßen.
Einmalig:
Code:
SqlDataAdapter daWeristOnline;
DataTable dtWeristOnline;
private void iniCTcontrolWeristOnline()
{
string sql = "SQL string über mehrer Tabellen";
SqlConnection con = new SqlConnection();
con.ConnectionString = "constring";
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = sql;
SqlCommand cmdUpdate = new SqlCommand();
cmdUpdate.Connection = con;
cmdUpdate.CommandText = sql;
dtWeristOnline = new DataTable();
daWeristOnline = new SqlDataAdapter(cmd);
daWeristOnline.Fill(dtWeristOnline);
dtWeristOnline.PrimaryKey = new DataColumn[] { dtWeristOnline.Columns["IP"], dtWeristOnline.Columns["Computer"] };
dgvCTcontrolWeristOnline.DataSource = dtWeristOnline;
dgvCTcontrolWeristOnline.Columns["aktAusgegebenAn"].Visible = false;
dgvCTcontrolWeristOnline.Columns["Vorname"].Visible = false;
dgvCTcontrolWeristOnline.Columns["Nachname"].Visible = false;
dgvCTcontrolWeristOnline.Columns["IP"].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;
dgvCTcontrolWeristOnline.Columns["Name"].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;
dgvCTcontrolWeristOnline.Columns["Betriebssystem"].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;
dgvCTcontrolWeristOnline.Columns["Modell"].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;
}
und alle 10 Sekunden möchte ich es updaten:
Code:
private void fillCTcontrolWeristOnline()
{
daWeristOnline.Fill(dtWeristOnline);
}
Mein Problem ist nun, dass die richtigen Zeilen geupdatet werden, die, die aber in der SQL-Tabelle nicht mehr drin sind, bleiben im Grid.
Es kommen also neue hinzu (KEINE DOPPELTEN), geändert werden auch die richtigen Zeilen nur gelöscht nicht.
Ich hoffe mir kann einer helfen.