Problem bei db.Execute: wenn imQuellFeld "" vorhanden sind

16/07/2009 - 13:06 von Steffen Brose | Report spam
Hallo Allseits, diese doppelten Hochkomma-Geschichten

Könnt Ihr mir da helfen ?

der Teil in meinen Code:

db.Execute "INSERT INTO [TAB05] (Art, Txt_der_TXT, Bezeichnung) " & _
" VALUES ( " & _
Q & strFileName & Q & ", " & _
Q & strFileContents & Q & ", " & _
Q & StartUpComment & Q & ")"

mache das Insert. Wenn aber im Inhalt der Txt_der_TXT selbst auch noch
doppelte Hochkomma "" vorkommen - gibt es an dieser Stelle (Fehler 3075)
einen Abbruch..

Danke für Eure Hilfe - Gruß Steffen
 

Lesen sie die antworten

#1 Peter Doering
16/07/2009 - 13:16 | Warnen spam
Hallo,

Steffen Brose wrote:

der Teil in meinen Code:

db.Execute "INSERT INTO [TAB05] (Art, Txt_der_TXT, Bezeichnung) " & _
" VALUES ( " & _
Q & strFileName & Q & ", " & _
Q & strFileContents & Q & ", " & _
Q & StartUpComment & Q & ")"

mache das Insert. Wenn aber im Inhalt der Txt_der_TXT selbst auch noch
doppelte Hochkomma "" vorkommen - gibt es an dieser Stelle (Fehler 3075)
einen Abbruch..



Q ist wohl Quote, oder? Einfaches oder doppeltes? Jet-SQL laesst beides zu.

Wenn in den Feldinhalten nur doppelte vorkommen koennen, ist das
einfachste, Q auf einfach umzustellen: ' Es darf aber kein O'Sullivan oder
aehnlich vorkommen.

Ansonsten verdoppeln:

... VALUES ( " & _
Q & Replace(strFileName, Q, Q & Q) & Q & ", " ...

Gruss - Peter

Mitglied im http://www.dbdev.org
FAQ: http://www.donkarl.com

Ähnliche fragen