In meinem Program (Admin Tool) habe ich einen DataGrid gefüllt mit Daten aus einer Datenbank. Aus diesem Programm will ich daten hinzufügen, löschen und editieren. Mein Ziel ist dass diese Änderungen auch in der Datenbank aktiv werden. Das heisst wen ich im Program eine Zeile lösche, dass diese Zeile auch in der Datenbank gelöscht wird. Wie macht man das am besten
lg.
Computer werden den Menschen immer ähnlicher - sie können bald alles, außer denken.
Wie arbeitest du? Mit DataAdapter und DataSet?
.NET GUI - Die Community für grafische Oberflächen unter .NET
Jetzt kostenlos besorgen: .NET BlogBook
Norbert Eder
DasBackup
Ich arbeite mit einem Dataset
Computer werden den Menschen immer ähnlicher - sie können bald alles, außer denken.
myDS = new DataSet();
OleDbConnection myConn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=D:\\HardwareDB.mdb");
try
{
myConn.Open();
// neuen Dataadapter Objekt
OleDbDataAdapter myDA = new OleDbDataAdapter("SELECT Objekt.ID As ID, Objekt.Name AS Name, Objekt.VersionNr AS VersionNr,Objekt.SerienNr AS Seriennummer, Kategorie.Name AS Kategorie, Objekt.Ort AS Ort, Objekt.Bemerkungen AS Bemerkung,Anzahl AS Anzahl FROM Objekt INNER JOIN Kategorie ON Objekt.Fk_Kat = Kategorie.ID", myConn);
// Dataadapter in Dataset umfüllen
myDA.Fill(this.myDS, "Hardware");
// neuen Dataadapter Objekt
OleDbDataAdapter myDAb = new OleDbDataAdapter("SELECT ID, Name FROM Kategorie", myConn);
//Dataadapter in Dataset umfüllen
myDAb.Fill(this.myDS , "Kategorien");
}
catch(Exception ex)
{ //Fehleranzeige per Messagebox
MessageBox.Show("FehlerID=001 - pls contact the administrator.\nFehler: " + ex.Message);
}
finally
{
myConn.Close();
}
Computer werden den Menschen immer ähnlicher - sie können bald alles, außer denken.
Die Änderungen kannst du über die Update-Methode zurück in die Datenbank schreiben.
.NET GUI - Die Community für grafische Oberflächen unter .NET
Jetzt kostenlos besorgen: .NET BlogBook
Norbert Eder
DasBackup
Zum Titel des Threads: man füllt kein DataGrid in eine DB, sondern das DataSet dahinter! Das DataGrid stellt die Daten lediglich dar.
logisch danke für den Hinweis.
Computer werden den Menschen immer ähnlicher - sie können bald alles, außer denken.