->where(‚column‘, $value) uz nefunguje (musi tam byt ' =?')?

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
thorewi
Člen | 84
+
0
-

Zdravim,

nejak mi toto po aktualizaci masteru prestalo fungovat, tak nevim, jestli to tak ma byt, nebo jsem neco prehledl?

hrach
Člen | 1836
+
0
-

Co znamena nefunguje? To uz je jako s BFU. Zkracene: melo by to fungovat, viz. testy

thorewi
Člen | 84
+
0
-

sry, vytvori mi to tento dotaz:

SELECT *
FROM w_photos
WHERE (w_photos.ID_USER IN (147)) AND (MAIN 0)

Neni tam problem ten nazev sloupce velkymi pismeny?

hrach
Člen | 1836
+
0
-

Tak jeste jednou, co ti ten dotaz vytvori? A jakou hodnotu predavas?

thorewi
Člen | 84
+
0
-

PHP:

$photo = $user->related('w_photos')->where('MAIN', 0)->fetch();

SQL:

SELECT *
FROM w_photos
WHERE (w_photos.ID_USER IN (147)) AND (MAIN 0)
thorewi
Člen | 84
+
0
-

diky

hrach
Člen | 1836
+
0
-

rozhodne doporucuji se vyvarovat nazvum velkymi pismeny. dane sloupce se napr. neescapuji…

thorewi
Člen | 84
+
0
-

jj to jsem si uz vsiml (blblo mi to se sloupcem GROUP), ale tuhle db bohuzel vytvarel nekdo jiny a my se k ni jen pripojujeme a pracujeme s daty v ni obsazenymi :/

jeste dotaz, kdyz to jen tak narychlo upravim na:

$photo = $user->related('w_photos')->where('MAIN', new \Nette\Database\SqlLiteral('NOW()'))->fetch();

tak opet dostavam

SELECT *
FROM `w_photos`
WHERE (`w_photos`.ID_USER IN (147)) AND (MAIN NOW())

pripadalo by mi to celkem i logicke, ale predtim to pry fungovalo timto zpusobem…

hrach
Člen | 1836
+
0
-

Jo, toto je urcite zamyslene chovani a zrejme take BC break.