MS-Office-Forum

Zurück   MS-Office-Forum > Microsoft Access & Datenbanken > Microsoft Access
Registrieren Forum Hilfe Alle Foren als gelesen markieren

Banner und Co.

Antworten
Ads
Themen-Optionen Ansicht
Alt 28.10.2003, 06:26   #1
Tadeus_Punkt
MOF User
MOF User
Ärger Dateinamen mit ' im Bezeichner

moin,

lese die dateinamen eines verzeichnisses ein,
dabei gibt es das problem, daß wenn ein ' (Bemerkungszeichen)
im Dateinamen ist, ich das nicht mit über die insert-fkt in die
tabelle einlesen kann. im string vor der fkt steht aber der dateiname noch richtig.

Code:

DoCmd.RunSQL "insert into mp3_user (cd_folder_nr, cd_file_nr , cd_path , file_name) values (" & lcfolder & ", " & lcfile & ", " & fDir.Path & ", " & strName & ");"
wie kann ich das problem umgehen?
gibt es noch mehr zeichen, welche acc so behandelt?

ersetze es im moment durch ein anderes zeichen, aber da ich später einen link zu dem file brauch, wäre es nicht schlecht wenn ich genau dieses zeichen in die tbl bekommen würde.

vielen dank für eure hilfe

gruss TP
Tadeus_Punkt ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 28.10.2003, 07:02   #2
MarioR
MOF Meister
MOF Meister
Nachricht

Hallo,

mich wundert, dass Du andere Dateinamen einlesen kannst, da Zeichenketten in ' oder " eingeschlossen werden müssen:
Code:

... & ", '" & strName & "');"
bzw.
Code:

... & ", """ & strName & """);"
In Deinem Fall wäre allerdings nur die 2. Variante möglich.

__________________

Mario

Fluchen ist die einzige Sprache, die alle Programmierer perfekt beherrschen.
MarioR ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 28.10.2003, 07:56   #3
Tadeus_Punkt
Threadstarter Threadstarter
MOF User
MOF User
Standard

hallo Mario,

hab gestern abend noch rumprobiert u da hab i die wohl weggemacht.
richtig ist natürlich

Code:

... '" & strName & "' ...
... deine zweite variant funktioniert tatsächlich, ich bin begeistert.
... hast du noch kurz lust zu erklären, wieso das nur so funktioniert?
ist für mich noch nicht wirklich logisch.

hab tausend dank für deine hilfe

gruss TP
Tadeus_Punkt ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 28.10.2003, 20:18   #4
MarioR
MOF Meister
MOF Meister
Nachricht

Access ersetzt die "" beim Zusammenfügen der Zeichenkette durch ein ", dass dann innerhalb der Zeichenkette steht.

Beispiel:
Code:

Dim strBand As String
Dim strSQL As String

strBand = "Guns N' Roses"
strSQL = "SELECT * FROM Tabelle WHERE Band=""" & strBand & """"
MsgBox strSQL
Der Code sieht zwar abenteuerlich aus, der zu verarbeitende SQL-String ist aber vollkommen i.O. (siehe MsgBox).


Code:

strSQL = "SELECT * FROM Tabelle WHERE Band='" & strBand & "'"
funktioniert dagegen nicht, da im Where-Teil die zu suchende Zeichenkette nur Guns N ist (vollständig in ' eingeschlossen) und das verbleibende Roses' nicht mehr zugeordnet werden kann.

__________________

Mario

Fluchen ist die einzige Sprache, die alle Programmierer perfekt beherrschen.
MarioR ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 29.10.2003, 06:41   #5
Tadeus_Punkt
Threadstarter Threadstarter
MOF User
MOF User
Standard

ok,

wenn man sich die sql-anweisung ausgeben läßt,
dann sieht es ganz logisch aus, nur das texte
ja immer in '" "' stehen sollten, das bringt mich
durcheinander.

hab vielen dank für deine nochmaligen ausführungen hier,
hast mir sehr geholfen.

gruss TP
Tadeus_Punkt ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Ads
Antworten


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Besucher: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:04 Uhr.



Powered by: vBulletin Version 3.6.2 (Deutsch)
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

Copyright ©2000-2018 MS-Office-Forum. Alle Rechte vorbehalten.
Copyright ©Design: Manuela Kulpa ©Rechte: Günter Kramer
Eine Verwendung der Inhalte in anderen Publikationen, auch auszugsweise,
ist ohne ausdrückliche Zustimmung der Autoren nicht gestattet.