Woodchuck Geschrieben 14. August 2002 Geschrieben 14. August 2002 Mahlzeit! Ich habe in meinem Programm (Borland c++ Builder) folgendes SQL-Statement: ADOQuery1->SQL->Add("insert into T1 (Text) values (:Text)"); Beim Kompilieren gibts keine Fehler. Wenn das Statement im laufenden Programm aufgerufen wird heisst es: Syntaxfehler in INSERT INTO Anweisung... Ich find die Syntax voll ok! Habt ihr ne Idee was er will? Danke, Woody Zitieren
Gast King555 Geschrieben 14. August 2002 Geschrieben 14. August 2002 Willst du das Wort ":Text" (ohne "") in das Feld "Text" schreiben oder ist das ein Parameter, der durch einen Wert ersetzt wird? Wenn ja, wie lautet der Wert? Zitieren
Woodchuck Geschrieben 14. August 2002 Autor Geschrieben 14. August 2002 Ich mach mal genauere Angaben: Ich hab eine Access DB mit einer Tabelle. Diese besteht aus einem Autowert als Primärschlüssel und einem Memofeld mit der Bezeichnung Text (es sollen lange Texte in die DB geschrieben werden können). Mit dem Borland C++ Builder hab ich ein Formular mit einem TMemo und einem TRichEdit erstellt. Für den Zugriff auf Access verwende ich ADO-Komponenten. Auf Knopfdruck wird der Code von oben ausgeführt, und der Inhalt des entsprechenden Feldes (Memo oder RichEdit, je nach gedrücktem Button) in den Übergabeparameter :Text geschoben. Dann wird das Statement ausgeführt (ExecSQL)... und an der Stelle kommt dann von Access/meinem Programm die Exception mit dem Syntaxfehler. Hilft das weiter? Gruss, Woody Zitieren
Gast King555 Geschrieben 14. August 2002 Geschrieben 14. August 2002 Also entweder ist das Feld "Text" kein Memofeld (also ein mehrzeiliges Feld) oder der Text, den du da rein schreibst, befindet sich nicht in Anführungszeichen. Es kann aber auch sein, dass du einfach die falschen Anführungszeichen benutzt, es gibt einfache (') und doppelte ("). Überprüf die drei Sachen mal. Zitieren
Woodchuck Geschrieben 14. August 2002 Autor Geschrieben 14. August 2002 Hab ich alles ausprobiert... Nichts hilft. Ich kann den Fehler auch immernoch nicht gewollt erzeugen... mal kommt er und mal nicht... Eigentlich kann das doch nicht sein... *heul* *kopfauftischhau* HILFE!!! Woody Zitieren
Gast King555 Geschrieben 14. August 2002 Geschrieben 14. August 2002 Bist du dir sicher, dass es sowohl die Tabelle als auch das Feld gibt, und dass beides so geschrieben wird, wie du es gemacht hast? Und bist du dir absolut sicher, dass die SQL Anweisung falsch ist? Kann es nicht was "drumherum" sein? Zitieren
Bitschubser Geschrieben 15. August 2002 Geschrieben 15. August 2002 Original geschrieben von Woodchuck Ich hab eine Access DB mit einer Tabelle. Diese besteht aus einem Autowert als Primärschlüssel und einem Memofeld mit der Bezeichnung Text (es sollen lange Texte in die DB geschrieben werden können). Ich kann mich irren, aber: Memo-Felder sind doch BLOBs? Ich denke, dass du nicht auf diese Weise in ein Blob schreiben kannst. Was aber sicher geht ist ein ADO-Stream. BLOBs sind keine normalen Felder... Grüße Matze Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.