LabVIEWForum.de
Sonderzeichen vor schreiben in MySQL maskieren - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenbank & File IO (/Forum-Datenbank-File-IO)
+---- Thema: Sonderzeichen vor schreiben in MySQL maskieren (/Thread-Sonderzeichen-vor-schreiben-in-MySQL-maskieren)



Sonderzeichen vor schreiben in MySQL maskieren - RabenFlug - 24.03.2014 15:53

Hallo liebe Experten,

ich bin gerade zufällig auf das alte Problem gestoßen, dass Sonderzeichen, die in Strings vorkommen, beim schreiben in eine MySQL Datenbank "gequotet" (mit Backslash versehen) werden müssen.
z.B. "Lisa schreibt gerne \ mit ihrer Tastatur!" --> "Lisa schreibt gerne \\\ mit ihrer Tastatur\!"
In der Suche konnte ich leider nicht viel zu dem Thema finden, daher dieser Thread.

Unter PHP gibt es die praktische Funktion mysql_real_escape_string, die das für alle Sonderzeichen erledigt. Nun suche ich für LabView eine entsprechende Funktion. Man könnte natürlich auch ein VI schreiben, aber dafür gibt es doch bestimmt schon eine Lösung. Wie macht ihr das? Jedes Zeichen des Strings durchlaufen und ggf. einen '\' davor anhängen? Ich weiß leider nicht bei welchen Zeichen gequotet werden muss.

Die Konvertierung in UTF-8 (beim schreiben) und zurück in Text (beim Lesen) klappt immerhin einwandfrei.

Noch ein kleiner Tip: Für den nativen Zugriff auf die MySQL DB verwende ich diese genialen VIs: *klick*. Der Zugriff funktioniert damit ganz ohne nervige ODBC Connection, perfekto!


RE: Sonderzeichen vor schreiben in MySQL maskieren - jg - 24.03.2014 16:52

Nein, dafür gibt es meines Wissens nach keine fertige Funktion.

Das VI dafür ist aber auch schnell geschrieben. Einfach ein Search & Replace mit Funktion "All" in einer FOR-Schleife mit Schieberegister. Welche Zeichen/Hex-Codes zu ersetzen sind, kannst du deinem eigenen Link zu PHP entnehmen.

Gruß, Jens


RE: Sonderzeichen vor schreiben in MySQL maskieren - GerdW - 27.03.2014 17:40

Hallo,

hier (oder im dort ebenfalls verlinkten PDF) wird eine Funktion namens "Escape String" beschrieben!

Big Grin


RE: Sonderzeichen vor schreiben in MySQL maskieren - jg - 27.03.2014 18:13

Offtopic2
(27.03.2014 17:40 )GerdW schrieb:  hier (oder im dort ebenfalls verlinkten PDF) wird eine Funktion namens "Escape String" beschrieben!
Ein cooler Link!!! Guru1