Wo fehlt denn in der SELECT-Anweisung das Semikolon?
fK.
- asp.net
0 Stefan Falz0 fK.
0 klaus0 Thomas
Ich raffs nicht!
Wo fehlt denn in der SELECT-Anweisung das Semikolon?
So siehts aus:
sql="INSERT INTO Hersteller (HG1,UG1) VALUES ('"& Hauptgruppe&"','"& Untergruppe&"') WHERE Email LIKE '" &Email& "' "
response.write(sql)
db2.Execute (sql)
Ich erhalte dann folgende Meldung:
INSERT INTO Hersteller (HG1,UG1) VALUES ('4','4') WHERE Email LIKE '11111111111111111'
Microsoft OLE DB Provider for ODBC Drivers-Fehler '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Fehlendes Semikolon (;) am Ende der SQL-Anweisung.
/haustechnikdialog/herstellerkategorien_hg1.asp, Zeile 33
Ich bitte um Hilfe! Danke
fK
Hallo fK (?),
[...]
sql="INSERT INTO Hersteller (HG1,UG1) VALUES ('"& Hauptgruppe&"','"& Untergruppe&"') WHERE Email LIKE '" &Email& "' "
response.write(sql)
[...]
im Normalfall ist es eigentlich egal, ob das Semikolon da steht oder
nicht (über ADO), aber ich denke mal, durch das " " (Leerzeichen) am
Ende des SQL-Strings wird noch etwas erwartet, was dann aber nicht folgt.
Daher entferne entweder das Leerzeichen oder schreibe:
sql="INSERT INTO Hersteller (HG1,UG1) VALUES ('"& Hauptgruppe&"','"& Untergruppe&"') WHERE Email LIKE '" &Email& "';"
Tschau, Stefan
Hat leider nicht gefruchtet:
So hab ichs im Quelltext:
---------------------------------------------------------------------
sql=("INSERT INTO Hersteller (HG1,UG1) VALUES ('"& Hauptgruppe&"','"& Untergruppe&"') WHERE Email LIKE '" &Email& "';")
Hier die Fehlermeldung
---------------------------------------------------------------------
INSERT INTO Hersteller (HG1,UG1) VALUES ('6','6') WHERE Email LIKE '888888888';
Microsoft OLE DB Provider for ODBC Drivers-Fehler '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Fehlendes Semikolon (;) am Ende der SQL-Anweisung.
/haustechnikdialog/herstellerkategorien_hg1.asp, Zeile 33
Echt zum kotzen, er schreibt dann natürlich auch nichts rein in die DB. Komisch
Ne Alternative zu bieten. Vielleicht mit Abfragen?
Danke
Hallo,
Ich raffs nicht!
Nette Begrüßung, oder was ist das sonst? ;-)
Wo fehlt denn in der SELECT-Anweisung das Semikolon?
So siehts aus:
sql="INSERT INTO Hersteller (HG1,UG1) VALUES ('"& Hauptgruppe&"','"& Untergruppe&"') WHERE Email LIKE '" &Email& "' "
ich hab' bisher noch keine DB gefunden, bei der ein Insert-Statement mit einer where-Klausel ausgestattet sein kann.
Access wird wahrscheinlich davon ausgehen, daß es sich eigentlich um zwei Statements handelt, und da muß halt zwischen erstem und zweitem ein Semikolon hinein.
aber ich denke es sollte heißen
sql="INSERT INTO Hersteller (Email,HG1,UG1) VALUES (""&Email&"", '"& Hauptgruppe&"','"& Untergruppe&"')"
oder sowas in der Art. aber sicher ohne "WHERE" and "ORDER" :-)
Sieh Dir bitte doch die Dokumentation zu Access durch: Online-Doku aufmachen-> Index auswählen->"insert" eingeben -> suchen -"Insert into"-Anweisung auswählen und lesen.
Grüße
Klaus
Sali fK
Als erstes möchte ich mich bei Stefan Falz für seine Hilfestellung bedanken. Allerdings hätte er es besser bleiben lassen.
Wie Klaus bereits erwähnt hat ist die WHERE Anweisung in deinem INSERT INTO äusserst fragwürdig. Und selbst Microsoft kennt in seinen SQL Definitionen keine INSERT INTO - WHERE kombinationen.
Falls Du einen neuen Record anlegen möchtest, benutzt Du die INSERT INTO Anweisung. Wenn aber der Record schon existiert (das scheint er in deinem Fall zu tun) so benötigst Du UPDATE!
Und so gehts:
UPDATE tab_name
SET spalte_1=ausdr_1 [{,spalte_2=ausdr_2}...]
[FROM tab_name1 [{,tab_name2}..]
[WHERE bedingung]
Grüsse
Thomas
Halllo Thomas,
[...]
Als erstes möchte ich mich bei Stefan Falz für seine Hilfestellung bedanken. Allerdings hätte er es besser bleiben lassen.
[...]
erstenst musst Du Dich nicht bedanken, da es nicht für Dich bestimmt war
und zweitens habe ich mal was übersehen (O Gott, wie schlimm). Meine
Antwort auf das Posting war daher falsch. Ist zwar nicht schön, aber
auch nicht tödlich (Du hast natürlich noch nie Fehler gemachtm gell?).
Wenn Klaus ihm nicht die Antwort auf seine Frage gegeben hätte, hätte
ich es gemacht, nachdem ich meinen Fehler bemerkt habe.
Daher brauchst Du hier keine ironischen Sprüche über Antworten abzulassen,
wenn das ganze Dich nichts angeht (Den obigen Spruch von fK hätte ich mir noch gefallen lassenm aber von Dir???).
[...]
Tschau, Stefan