insert sql -> umgang mit ' und "



  • Hi,

    ich habe die mysqldac komponenten und möchte gerne einiges in meine mysqldatenbank schreiben. problem ist nur, dass es nicht immer geht, da meine texte teilweise die ' und " zeichen enthalten.

    bei php gibt es eine schöne addslashes funktion. nur was könnte ich im c++ builder machen?

    timo



  • Du machst genau das was addslashes in php macht ^^



  • hi,

    in der addslshes hilfe bei php steht:

    Gibt einen String (Zeichenkette) zurück, in dem bestimmten Zeichen ein Backslash "\" voran gestellt wurde. Diese Funktion ist z.B. für Datenbankabfragen wichtig. Die behandelten Zeichen sind der einfache und der doppelte Anführungsstrich (' und "), der Rückstrich (\) selbst sowie NUL (das Null-Byte).

    also brauche ich nur z.b. ' durch \' ersetzen? dasselbe bei den anderen zeichen. ich meine mich zu erinnern, mal gelesen zu haben, dass man auch ' durch '' ersetzen kann. nur was ist nun korrekt?

    das sollte ich dann soweit hinbekommen, nur was ist ein Null-Byte? Wie kann ich das ermitteln?

    timo



  • Der Unterschied zwischen ' und " ist:
    ' definiert im Source ein Zeichen
    " definiert einen String
    deshalb kannst du auch ' durch " ersetzen. Das einzigste ist dann halt dabei, dass du noch das Ende des Strings hast, sprich bei einem Zeichen verbrätst du Platz für 2 Zeichen.
    Ein NULL Byte ist ein Byte in dem nichts drin steht, also nicht ein Byte in dem 0 drin Steht sonder nichts quasi '' (<- ohne Leerzeichen dazwischen)


Anmelden zum Antworten