Problem mit access

Hi leute,

Ich bin gerade dabei ein Porgramm zur Kundenverwaltung zu schreiben.
Ich möchte das mit einer Accessdb verwirklich.

Nun mein prob.

Ich keine keine Leerzeichn oder “.” in die DB speichern. Es kommt immer der Fehler:

System.Data.OleDb.OleDbExeption: Syntaxfehler (fehlender Operator) in Abfrageausdruck ‘@xxxx

So sieht mein code aus:
[csharp]
OleDbDataAdapter adapter = new OleDbDataAdapter(mySelect, con);
adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;

        adapter.InsertCommand = new OleDbCommand("INSERT INTO Privat ([Vorname], [Nachname], [privateAnschrift], [Kinder], [Telefon], [Mobil], [Fax], [Website], [Familienstand], [Leistungsart], [Bgnr], [Rvnr], [PLZ], [hausnr]) VALUES (@" 
                                                 + vornameTB.Text + ", @" + nachnameTB.Text + ", @" + privatestrTB.Text + ", @" + kinderTB.Text + 
                                                 ", @" + telefonTB.Text + ", @" + mobilTB.Text + ", @" + faxTB.Text + ", @" + websiteTB.Text + ", @"
                                                 + famstandTB.Text + ", @" + sozlTB.Text + ", @" + bgnrTB.Text + ", @" + rvnrTB.Text + ", @" + plzTB.Text + ", @" + hausnrTB.Text + ")", con);

        adapter.InsertCommand.Parameters.Add("Vorname", OleDbType.VarChar).Value = vornameTB.Text;
        adapter.InsertCommand.Parameters.Add("Nachname", OleDbType.VarChar).Value = nachnameTB.Text;
        adapter.InsertCommand.Parameters.Add("privateAnschrift", OleDbType.VarChar).Value = privatestrTB.Text;
        adapter.InsertCommand.Parameters.Add("Kinder", OleDbType.VarChar).Value = kinderTB.Text;
        adapter.InsertCommand.Parameters.Add("Telefon", OleDbType.VarChar).Value = telefonTB.Text;
        adapter.InsertCommand.Parameters.Add("Mobil", OleDbType.VarChar).Value = mobilTB.Text;
        adapter.InsertCommand.Parameters.Add("Fax", OleDbType.VarChar).Value = faxTB.Text;
        adapter.InsertCommand.Parameters.Add("Website", OleDbType.VarChar).Value = websiteTB.Text;
        adapter.InsertCommand.Parameters.Add("Familienstand", OleDbType.VarChar).Value = famstandTB.Text;
        adapter.InsertCommand.Parameters.Add("Leistungsart", OleDbType.VarChar).Value = sozlTB.Text;
        adapter.InsertCommand.Parameters.Add("Bgnr", OleDbType.VarChar).Value = bgnrTB.Text;
        adapter.InsertCommand.Parameters.Add("Rvnr", OleDbType.VarChar).Value = rvnrTB.Text;
        adapter.InsertCommand.Parameters.Add("PLZ", OleDbType.VarChar).Value = plzTB.Text;
        adapter.InsertCommand.Parameters.Add("hausnr", OleDbType.VarChar).Value = hausnrTB.Text;

[/csharp]

Wie gesagt meine Frage ist:

Wie kann ich Text abspeichern mit Leerzeichen und sonderzeichen. also in der access DB --.–…

Ich hoffe ich bin hier richtig und habe meine frage einigermaßen verstädnlich ausgedrückt. Danke schonmal

mfg Matze

ähm
du baust deinen Command falsch auf
dein Commandstring muss so aussehen
“INSERT INTO Privat (Vorname, Nachname, privateAnschrift, Kinder, T…) VALUES (@Vorname,@Nachname,…”
und deinen Parameter setzt du dann so
adapter.InsertCommand.Parameters.Add("@Vorname", OleDbType.VarChar).Value = vornameTB.Text;

alternativ kannst du auch sagen
adapter.InsertCommand.Parameters.AddWithValue( “@Vorname”,vornameTB.Text);

Vielen Dank für die schnelle Antwort!

Ich habe es jetzt genauso gemacht…
[csharp]
adapter.InsertCommand = new OleDbCommand(“INSERT INTO Privat (Vorname, Nachname, privateAnschrift, Kinder, Telefon, Mobil, Fax, Website, Familienstand, Leistungsart, Bgnr, Rvnr, PLZ, hausnr) VALUES (@Vorname, @Nachname, @privateAnschrift, @Kinder, @Telefon, @Mobil, @Fax, @Website, @Familienstand, @Leistungsart, @Bgnr, @Rvnr, @PLZ, @hausnr)”, con);

        adapter.InsertCommand.Parameters.Add("@Vorname", OleDbType.VarChar).Value = vornameTB.Text;
        adapter.InsertCommand.Parameters.Add("@Nachname", OleDbType.VarChar).Value = nachnameTB.Text;
        adapter.InsertCommand.Parameters.Add("@privateAnschrift", OleDbType.VarChar).Value = privatestrTB.Text;
        adapter.InsertCommand.Parameters.Add("@Kinder", OleDbType.VarChar).Value = kinderTB.Text;
        adapter.InsertCommand.Parameters.Add("@Telefon", OleDbType.VarChar).Value = telefonTB.Text;
        adapter.InsertCommand.Parameters.Add("@Mobil", OleDbType.VarChar).Value = mobilTB.Text;
        adapter.InsertCommand.Parameters.Add("@Fax", OleDbType.VarChar).Value = faxTB.Text;
        adapter.InsertCommand.Parameters.Add("@Website", OleDbType.VarChar).Value = websiteTB.Text;
        adapter.InsertCommand.Parameters.Add("@Familienstand", OleDbType.VarChar).Value = famstandTB.Text;
        adapter.InsertCommand.Parameters.Add("@Leistungsart", OleDbType.VarChar).Value = sozlTB.Text;
        adapter.InsertCommand.Parameters.Add("@Bgnr", OleDbType.VarChar).Value = bgnrTB.Text;
        adapter.InsertCommand.Parameters.Add("@Rvnr", OleDbType.VarChar).Value = rvnrTB.Text;
        adapter.InsertCommand.Parameters.Add("@PLZ", OleDbType.VarChar).Value = plzTB.Text;
        adapter.InsertCommand.Parameters.Add("@hausnr", OleDbType.VarChar).Value = hausnrTB.Text;

[/csharp]
jetzte sagt er das im “INSERT INTO” statement ein Syntaxfehler aufgetreten is…

ich finde ihn aber nich o.O

du musst mal dazu sagen was er meckert, weil ich kann jetzt auf den ersten Blick nichts erkennen.