Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PDO] Problem z aliasami w WHERE
Forum PHP.pl > Forum > PHP
Sajrox
Witam,

Nie wiem czy dobrze myślę ale chyba PDO posiada buga. Przy użyciu funkcji bindValue()" title="Zobacz w manualu PHP" target="_manual zapytanie które4 posiada w warunku WHERE pole z aliasem nie chce działać:

Przykład:

  1. SELECT * FROM tabela AS tab WHERE tab.id = :id


Jednak gdy usune alias z pola id kod dzała bez problemu
  1. SELECT tab.id AS id FROM tabela AS ta WHERE id = :id


Bardzo mi zalazy na tym aby aliasy były także akceptowane w warunku WHERE.

Czy ktoś wie co może być przyczyną i jak można to obejść. Aby 1 przykład zapytania działał poprawnie.

Jestem pewien że wina nie stoi po mojej stronie gdyż zapytanie jest poprawne
kefirek
A jak dasz tak
  1. SELECT ta.* FROM tabela ta WHERE id = :id
Sajrox
Myślę że to zadziała.
Ale co kiedy zapytanie składa się z kilku tabel przez np złączenie LEFT JOIN. Wtedy aliasy muszą być chyba zastosuje mój 2 sposób:

  1. SELECT tab.id AS id FROM tabela AS ta WHERE id = :id


ale nie to chodzi. Dziwne że PDO nie radzi z aliasami w warunku WHERE.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.