Hallo ich bins nochmal.
Also das mit dem DataGrid hat jetzt geklappt.
Allerdings hab ich jetzt schon das nächste Problem wo ich nicht weiterkomme. Und zwar wenn ich ein Datensatz zu einer Tabelle hinzufügen will.
Hier mal mein Code:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| string Datum = textBoxRepariertAm.Text; string Von = textBoxVon.Text; string Fehler = textBoxFehler.Text; string Seriennummer = textBoxSeriennummer2.Text;
OleDbConnection con = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Datenbank.mdb"); con.Open(); string strSQL = "INSERT INTO Reparaturberichte (Seriennummer, Fehlerbericht, Datum, PersonalNummer) " + "VALUES("+Seriennummer+","+Fehler+","+Datum+","+Von+")";
OleDbCommand cmd = new OleDbCommand(strSQL, con); cmd.ExecuteNonQuery(); |
Das Problem: Beim ausführen der Zeile cmd.ExecuteNonQuery(); bekomme ich einen Fehler der da lautet:
Syntaxfehler (fehlender Operator) in Abfrageausdruck 'Alles war kaputt, jetzt ist aber wieder alles ganz'.
Wenn ich aber die INSERT INTO Zeile folgendermasen abändere: string strSQL = "INSERT INTO Reparaturberichte (Seriennummer, Fehlerbericht, Datum, PersonalNummer) " + "VALUES("+Seriennummer+",
'Alles war kaputt, jetzt ist aber wieder alles ganz',"+Datum+","+Von+")";
dann funktioniert das wunderbar und er legt mir den neuen Datensatz an.
Bringt mir ja aber nix da ich den string ja variabel brauch.
Ich verstehe nicht was der Unterschied zwischen dem variablen String ist den ich ihm gebe und der Konstanten, mit der es ja fehlerfrei geht.
Vieleicht weiß ja einer Rat.
Moderiert von Christian S.: C#-Tags hinzugefügt