Laden...

Daten in lokale mdf Datei per SQL geschrieben - Änderungen werden nicht im DatagridView angezeigt

Erstellt von McStarProjekt vor 5 Jahren Letzter Beitrag vor 5 Jahren 859 Views
M
McStarProjekt Themenstarter:in
1 Beiträge seit 2015
vor 5 Jahren
Daten in lokale mdf Datei per SQL geschrieben - Änderungen werden nicht im DatagridView angezeigt

Hallo zusammen,

ich habe schon ähnliche Eintrage gefunden, aber diese haben mir nicht weiter geholfen bzw. versehe ich was falsch.

Ich habe eine lokale Datenbankdatei erstellt und kann auch per SQL in die Datenbank schreiben. Ich habe eingestellt das die Datenbankdatei kopiert werden soll wenn sie neuer ist.

Ich schaffe es aber nicht die Daten die ich per SQL in die Datenbankdatei geschrieben habe, zur Laufzeit wieder in das DatagridView einzulesen. Damit die Änderung gleich angezeigt wird.

Anbei ein Beispiel: Wenn ich per SQL z.B. den Wochentag Montag in MontagEdit umändere, speichert das zwar die Datenbank ab. Im DatagridView bleibt jedoch "Montag" stehen.

Wie kann ich die aktualisierten Daten aus der Datenbank in meine Anwendungen laden ?

Ich benütze Visual Studio Community.

   // SqlVerbindung herstellen
                    SqlConnection SqlConnUpdate = new SqlConnection(SqlConnString);
                    SqlConnUpdate.Open();

                    // Sql Statement
                    SqlCommand query_update = new SqlCommand("UPDATE Arbeitstage SET Arbeitstage.Wochentag = @wochentagParam  where Arbeitstage.ArbeitstagID like @arbeitstagIDParam" , SqlConnUpdate);
                    query_update.Parameters.AddWithValue("@wochentagParam", tb_Wochentag.Text);
                    query_update.Parameters.AddWithValue("@arbeitstagIDParam", tb_ArbeitstagID.Text);

                    // Sql Statment ausfuehren
                    query_update.ExecuteNonQuery();

                    // Sql Verbindung beenden
                    SqlConnUpdate.Close();


                    // Dategrid Refresh - verusche
                    this.dgv_arbeitstage.EndEdit();
                    this.dgv_arbeitstage.Update();
                    this.dgv_arbeitstage.Refresh();

Vielen Dank für eure Hilfe.

F
10.010 Beiträge seit 2004
vor 5 Jahren

Und du meinst das das DGV ( also das Control das nur für die anzeige der gebundenen Daten da ist ) weiss wie es die Daten aus der DB holt?

Du musst die Daten natürlich wieder einlesen, wie am Anfang auch, z.b. mit einem DataAdapter