Jo: ODBC Zugriff auf Access via PHP

Guten Mittag,

nach stundenlanger Lösungssuche (ohne Erfolg) versuch ich mich doch mal mit einem Posting ;-)

Umgebung: Ich hab' hier ein PHP-Script, daß Datensätze aus einem .csv - File ausliest und in eine Access-Datenbank (angebunden via ODBC) schießt.
Problem: Die Felder enthalt Namen in denen auch mal ein ' vorkommt (Beispiel: Allan D'More). Die SQL-Abfrage schlägt hier fehl:

Warning: SQL error: [Microsoft][ODBC Microsoft Access Driver] Syntax Error (missing operator) in query expression "Allan D'Moore')'., SQL state 37000 in ....

Die Abfrage lautet:
$datensatz[0] = "Allan D'More";
$sql = "SELECT tbl_Kunde.Kd_ID FROM tbl_Kunde
        WHERE tbl_Kunde.Name = '$datensatz[0]'";
$res = ....

Die Versionen tbl_Kunde.Name = '"$datensatz[0]"' und auch tbl_Kunde.Name = '"".$datensatz[0].""' funktionieren nicht.

Hat jemand vielleicht eine Idee?
Danke Euch und Grüße

Jo

  1. Guten Mittag,
    Die Versionen tbl_Kunde.Name = '"$datensatz[0]"' und auch tbl_Kunde.Name = '"".$datensatz[0].""' funktionieren nicht.

    Hat jemand vielleicht eine Idee?

    Hallo,
    bei Microsoft hilft ein Escape-Zeichen nichts. Du mußt ein " durch "" ersetzen, bzw. ' durch '', je nachdem welches als Trennzeichen verwendet wird. Sollte z.B. mit str_replace kein Problem sein.

    Uwe

    1. Hi Uwe,

      danke!!!!!! Das wars!
      GRuß JO