PDA

Vollständige Version anzeigen : SQL-Statement und das Semikolon in Access


formular.bib
27.10.2003, 17:01
Guten Abend, hier ein Codeschnipsel, wo die Fehlermeldung kommt, das ein Semikolon fehlt
'INSERT der neuen Kostenstelle
DoCmd.RunSQL " INSERT INTO t05_AnfordStelleStelle(AnfordStelleAW, Empfaenger, HausEtage, AnfordStellenStatus)" & _
" VALUES ('" & Me!txtAnfordBezNeu & "','" & Me!txtEmpfaenger & "', '" & Me!txtEtage & "',-1)" & _
" WHERE Me!comboKostNeu.Column(0) = [t06_KostenStelle].KostenStellenNr "

Danke für Eure Hilfe!

Jochen
Paderborn

Thomas Braun
27.10.2003, 17:07
Bei deinem Statement ist einfach die WHERE Klausel überflüssig.
Probier mal:
DoCmd.RunSQL "INSERT INTO t05_AnfordStelleStelle(AnfordStelleAW, Empfaenger, HausEtage, AnfordStellenStatus)" & _
" VALUES ('" & Me!txtAnfordBezNeu & "', '" & Me!txtEmpfaenger & "', '" & Me!txtEtage & "', '-1')"

formular.bib
27.10.2003, 17:10
Hallo Thomas,

woher weisst Du das die WHERE-Klausel überflüssig ist?

Jochen

Johnny Loser
27.10.2003, 17:51
Ich habe die Fehlermeldung zwar noch nie gesehen, aber versuche doch einfach mal, das Semikolon ans Ende zu stellen.

DoCmd.RunSQL " INSERT INTO t05_AnfordStelleStelle(AnfordStelleAW, Empfaenger, HausEtage, AnfordStellenStatus)" & _
" VALUES ('" & Me!txtAnfordBezNeu & "','" & Me!txtEmpfaenger & "', '" & Me!txtEtage & "',-1)" & _
" WHERE Me!comboKostNeu.Column(0) = [t06_KostenStelle].KostenStellenNr;"

Ansonsten mach ich's für gewöhnlich so:

CurrentDb.Execute(" INSERT INTO t05_AnfordStelleStelle(AnfordStelleAW, Empfaenger, HausEtage, AnfordStellenStatus)" _
& " VALUES ('" & Me!txtAnfordBezNeu & "','" & Me!txtEmpfaenger & "', '" & Me!txtEtage & "',-1)" _
& " WHERE Me!comboKostNeu.Column(0) = [t06_KostenStelle].KostenStellenNr")

Nouba
27.10.2003, 18:02
Übersetzt heißt die Abfrage doch:
Füge an die Tabelle
t05_AnfordStelleStelle einen Datensatz an, wobei die Felder <i>AnfordStelleAW, Empfaenger, HausEtage, AnfordStellenStatus</i> mit den von VBA ausgewerteten konstanten Werten <i>'bla', ' blabla', 'blablabla', -1</i> versorgt werden. Ein Where-Ausdruck kann hier nicht mehr greifen.

Thomas Braun
28.10.2003, 08:51
@ Jochen
Wie Nouba schon geschrieben hat: Du fügst feste Werte in eine Tabelle ein. Wozu brauchst du da eine WHERE-Klausel?

Funktioniert mein Vorschlag denn nicht?