Hi Leuts ...
Ich hab Probleme mit nem popligen SQL-INSERT.
Unter MySql hab ich das schon zig Mal gemacht,
nur mit nem ACCESS-File noch nicht so oft.
Guckt Euch mal die Einzelteile an.
1.) Der ConnectString zur Access-DB
C#-Quelltext
1: 2: 3: 4:
| string ConStr = @"Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + AccessFile;
InfoBox(ConStr); |
Laut Kontroll-Ausgabe 1 dürfte das richtig sein. Oder ?
Der Datei-Pfad stimmt ...
Jetzt das INSERT
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| string SqlStr = "INSERT INTO User(ServerTitel, ServerName, DBName, UserName, Password, DBCreate) " + "VALUES(" + ns.ServerTitel + ", " + ns.ServerName + ", " + ns.DBName + ", " + ns.UserName + ", " + ns.Password + ", " + "Ja)";
InfoBox(SqlStr); |
Das sind meine Fantasie - Eingaben.
Der Komplette INSERT
Findet einer von Euch da einen Fehler .... ?
Ich finde nix ...
Und hier der Rest vom Code ...
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19:
| using(OleDbConnection conn = new OleDbConnection(ConStr)) { using(OleDbCommand cmd = new OleDbCommand(SqlStr, conn)) { try { conn.Open();
cmd.CommandText = SqlStr; cmd.CommandType = CommandType.Text; cmd.ExecuteNonQuery(); } catch(Exception x) { ErrorBox(x.Message); }
} } |
Der Fehler wird durch die Exeption ausgegeben.
Das soll ein SyntaxFehler sein.
Vielleicht hab ich auch ne Kleinigkeit übersehen.
Richtet Eure geschulten Augen mal auf die SQL-Syntax.
Meiner Meinung nach müßte es funktionieren.
Aber ich hab mit Access und C# noch nicht so viel Erfahrung.
Für einen Tipp wäre ich sehr dankbar.
Kann eh' mal wieder nur ne Kleinigkeit sein.
DANKE im Voraus
Greeting
( Karl )
Moderiert von
Christian S.: Topic aus WinForms verschoben am Mi 21.01.2009 um 18:35