Laden...

DataAdapter Update Syntaxfehler

Erstellt von zerberos vor 15 Jahren Letzter Beitrag vor 15 Jahren 1.508 Views
Z
zerberos Themenstarter:in
520 Beiträge seit 2007
vor 15 Jahren
DataAdapter Update Syntaxfehler

Hallo,

ich versuche gerade meine DataTable zurück in die Datenbank zu schreiben.

Leider bekomme ich beim Update die Fehlermeldung "Syntaxfehler in Insert Into Anweisung"

Mein Code:


    Dim daadapter As OleDbDataAdapter = New OleDbDataAdapter("Select * FROM Daten", con)
        Dim cb As OleDbCommandBuilder = New OleDbCommandBuilder(daadapter)
        daadapter.Update(dt1)

Wie kann ich mir die Insert into anweisung anzeigen lassen um vielleicht zu sehen wo der Fehler ist?

J
3.331 Beiträge seit 2006
vor 15 Jahren

DbDataAdapter.InsertCommand.CommandText oder DbCommandBuilder.GetInsertCommand.CommandText

Jürgen

Gelöschter Account
vor 15 Jahren

debuggen.... wenn du dann mit der mouse auf den dataadapter gehst, kannst du direkt sehen, welchen text er verwenden wollte. siehe dazu die von juetho genannten eigenschaften an.

F
10.010 Beiträge seit 2004
vor 15 Jahren

Bei dem Sql-Select kann diese Meldung nur bedeuten, das Du ein reserviertes Wort
als Spaltenname benutzt hast.

Z
zerberos Themenstarter:in
520 Beiträge seit 2007
vor 15 Jahren

Ja stimmt. Da ist ein reserviertes Wort und zwar heißt eine Spalte As in der Datenbanktabelle

Bis jetzt hat das funktioniert da ich immer alles per Hand ausgelesen und reingeschrieben habe und das "As" dann in Anführungszeichen geschrieben haben

Kann mir einer sagen was ich jetzt machen kann? Muss ich die Spalte in der Datenbank umbennen (das wäre sehr blöd)

J
3.331 Beiträge seit 2006
vor 15 Jahren

Ja stimmt. Da ist ein reserviertes Wort ... Kann mir einer sagen was ich jetzt machen kann? Muss ich die Spalte in der Datenbank umbennen (das wäre sehr blöd)

Per Forumssuche spaltennamen reservier* finde ich in der ersten Diskussion:

Packt man diese Spaltennamen in [ ] passts.

Jürgen

Z
zerberos Themenstarter:in
520 Beiträge seit 2007
vor 15 Jahren

Ja aber den Insert String baue ich doch garnicht selbst zusammen. Das macht ja der CommandBuilder alleine. Also kann ich ja im Insert-String auch nichts in [] packen.

Verstehe ich jetzt was falsch?

Oder muss ich in der DataTable den Spaltennamen in [] packen?

F
10.010 Beiträge seit 2004
vor 15 Jahren

Schau mal im CommandBuilder alle Properties durch, da werden Dir bestimmt 2 zu
auffallen, die dir helfen können.

Z
zerberos Themenstarter:in
520 Beiträge seit 2007
vor 15 Jahren

Welche Eigenschaft meinst du? Habe mir jetzt alle durchgelesen und mir ist keine aufgefallen.

Vielleicht bin ich auch nur zu müde.....

Kannst du mir die Eigenschaft nennen?

Z
zerberos Themenstarter:in
520 Beiträge seit 2007
vor 15 Jahren

gefunden...

QuoatePrefix oder?

Mache jetzt Schluss und werde morgen testen.

Gibt es noch was anderes als Quoate Prefix?

F
10.010 Beiträge seit 2004
vor 15 Jahren

QuoteSuffix und QuotePrefix musst du beide setzen.

J
3.331 Beiträge seit 2006
vor 15 Jahren

Gibt es noch was anderes als Quoate Prefix?

Du musst in der Tat schon sehr müde gewesen sein. Die Eigenschaft heißt **QuotePrefix **und wird direkt gefolgt von QuoteSuffix. Jürgen

PS. So kann es mit der MS-Übersetzung gehen. Der erläuterende Text spricht bei beiden Eigenschaften von den Anfangszeichen. Erst die näheren Hinweise (und meine Kenntnisse über Fremdwörter) machen deutlich, dass QuotePrefix für Anfangszeichen und QuoteSuffix für Schlusszeichen zuständig ist.