Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Symfony] problem z zapytaniem sql
Forum PHP.pl > Forum > PHP > Frameworki
blackroger
Mam tabele user w schema i w bazie Postgree. W momencie:
  1. $c = new Criteria();
  2. $c->add(UserPeer::LOGIN, $login);
  3. $c->add(UserPeer::PASS, md5($pass));
  4. $c->add(UserPeer::DELETED, false);
  5. $u = UserPeer::doSelectOne($c);

pojawia się błąd

500 | Internal Server Error | PropelException
<h2 id="message"> [wrapped: SQLSTATE[42601]: Syntax error: 7 ERROR: syntax error at or near "."
LINE 1: SELECT user.USER_ID, user.LOGIN, user.PASS, user.NAME, user....
^]
</h2>wygląda na to że user jest zarezerwowany. Normalnie w statycznym zapytaniu do bazy np. select name from "user", user daje w cudzysłowie. Jak to obejść?

Zamieniłem wszystkie const w BaseUserPeer np.:
const USER_ID = 'user.USER_ID';

na
const USER_ID = '"user".USER_ID';

Da się jakoś w schemie już to ustawić?

np. <table name=""user"" phpName="User">, gdzie user jest interpretowany w cudzysłowie?
dantes
Nie chcę wprowadzać w błąd, ale czy User nie jest jakimś zastrzeżonym słowem kluczowym?
Ja miałem niezłą zagadkę, czemu obiekty klasy Location wyrzucają mi (z tego co pamiętam) podobne błędy. I nie było zmiłuj, trzeba było zmienić na Sublocation winksmiley.jpg
darko
Tak, user jest słowem zastrzeżonym , co może powodować takie problemy, proponuję zmienić nazewnictwo pól w tabeli.
masterix
To powoduje problemy smile.gif Miałem ten sam problem jak nazwałem relację po prostu "order".

pzdr.
baniczek
edit:
nie zauwazylem poprzednich postow
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.