SqlPreprocessor a ORDER BY

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

Nepochopil jsem a ani nenasel vysvetleni, proc mi SqlPreprocessor nedokaze zpracovat parametry, kdyz se ve query objevi ORDER BY.

$connection->preprocess('SELECT * FROM table WHERE ?', ['id' => 123, 'size >=' => 10]);

Vygeneruje: SELECT * FROM table WHERE (id = 123) AND (size >= 10)

$connection->preprocess('SELECT * FROM table WHERE ? ORDER BY size', ['id' => 123, 'size >=' => 10]);

Vygeneruje: SELECT * FROM table WHERE id=123, size `=size ` > 10 ORDER BY id

Pokud mam v query ORDER BY, nemuzu pouzit pole. Musim si sloupce vypsat primo do query spolecne s placeholderama (?).

David Grudl
Nette Core | 8282
+
+2
-

Opraveno, zatim použij WHERE ?and ORDER BY size

suwer
Člen | 33
+
0
-

David Grudl napsal(a):

Opraveno, zatim použij WHERE ?and ORDER BY size

Diky. Tak nejak jsem tusil zradu v regularce, ale moc jsem to nedokazal rozlustit :-).