42S22 SQL-Fehler: Spalte nicht gefunden, warum?
Dies ist mein SQL:
SELECT `tbl`.*, 123 AS `test` FROM `tbl` GROUP BY `test`
Es funktioniert wenn ich es direkt in MySQL. Aber PDO sagt:
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'test' in 'field list'
Warum ist das so? Wie zu heilen dieses problem? Ich bin mit Zend_Db.
InformationsquelleAutor yegor256 | 2010-05-20
Du musst angemeldet sein, um einen Kommentar abzugeben.
Entfernen Sie die backticks aus der ganzen test und ersetzen Sie diese durch einfache Anführungszeichen wie folgt:
Ich bin nicht sicher, wenn Sie haben zu tun die gleiche Sache, um den test in Ihrer GRUPPE DURCH, aber die erste änderung sollte sich darum kümmern.
Der Grund dafür ist, dass die backticks (`) bedeuten, Datenbanken, Tabellen und Spalten der Datenbank. Die PDO ist strenger als bei der Ausführung direkt in MySQL. Nicht sicher über den Grund dafür, aber das ist, wie es ist.
InformationsquelleAutor Joseph