Der Martin: Einfache Datenbankabfrage MSYQL bringt kein Ergebnis

Beitrag lesen

Hi,

In dem Feld MAINKEY sind unter Anderem 5 Einträge mit dem Inhalt: MAIN\ADDR_HIS.

also mit einem echten Backslash?

$SQL = "SELECT * FROM registry WHERE MAINKEY = 'MAIN\ADDR_HIS'";

Dieser String enthält, nachdem er von PHP geparst ist, einen einzelnen Backslash.

Was ist falsch an meiner Abfrage?

Auch in mySQL ist der Backslash ein Sonderzeichen. Wenn mySQL nur einen einzelnen Backslash bekommt, versucht die DB, die entsprechende Escape-Sequenz aufzudröseln. Da \A keine gültige Escape-Sequenz ist, wird der Backslash ignoriert. Was übrig bleibt, passt nicht mehr zu deinem gesuchten Ausdruck.

Ergo: Sorge dafür, dass mySQL _zwei_ Backslashes bekommt.

Ciao,
 Martin

--
Eifersucht ist so alt wie die Menschheit: Als Adam einmal spät heimkam, zählte Eva sofort seine Rippen.
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(