1.4k Aufrufe
Gefragt in Webseiten HTML von
Hallo,

habe ein Problem mit meiner ASP.net website:

Ich will in eine Accessdatenbank einen Datensatz einfügen, jedoch bekomme ich immer einen Fehler: "Syntax error in INSERT INTO statement."

Hier mal mein Code für die Datenbankverbindung:

Dim db As String
db = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("../App_Data/Database.mdb") & ";"
' Verbindung zur Datenbank herstellen
Dim conn As New Data.OleDb.OleDbConnection(db)
conn.Open()

cmd = New Data.OleDb.OleDbCommand(sqlInsert, conn)
cmd.ExecuteNonQuery()
cmd2 = New Data.OleDb.OleDbCommand(sqlinsert2, conn)
cmd2.ExecuteNonQuery()

MsgBox("Eingabe gespeichert")
conn.Close()


Und die INSERT INTO strings:

INSERT INTO User (UName, UPassword) VALUES ('test', 'test)

INSERT INTO Userdetails (UName, EMail) VALUES ('test', 'test@test.de)

Vielleicht kann mir da ja irgendwer weiterhelfen, wäre echt genial.

Danke und schöne Grüße,

Henrik

4 Antworten

0 Punkte
Beantwortet von supermax Experte (4.8k Punkte)
Beim jeweils zweiten Wert in VALUES fehlt der schließende Anführungsstrich.
0 Punkte
Beantwortet von
Ah sorry, den hatte ich nur incht mit abgeschrieben...hab mir die beiden INSERT INTOs nur als MSGBox ausgeben lassen und musste das eben abschreiben.

Also sehen eigentlich so aus:

INSERT INTO User (UName, UPassword) VALUES ('test', 'test')

INSERT INTO Userdetails (UName, EMail) VALUES ('test', 'test@test.de')
0 Punkte
Beantwortet von son_quatsch Experte (5.3k Punkte)
Überprüfen, ob beide Spalten auch wirklich Textformate haben und ausreichend lang sind.
Überprüfen, ob die Tabellen nur diese beiden Spalten haben.
Überprüfen, ob USER nicht gar ein reserviertes Wort ist.

Kannst du das nicht sinnvoll debuggen? Also tracen - Zeile für Zeile? Außerdem das Statement mal direkt in der DB absetzen statt per ASP. Und wenn du dir das per MsgBox ausgeben lässt, dann guck lieber supergenau hin - ansonsten so ausgeben, dass du es direkt kopieren und hier einfügen kannst.
0 Punkte
Beantwortet von
User war wohl ein reserviertes Wort...Tabelle ubenannt und nun gehts :)

thx
...