inkrementace pomocí Nette\Database

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

Ahoj, je možné v Nette\Database nějak jednoduše inkrementovat? Zatím to řeším takhle

BaseModel::$db->exec('UPDATE `book` SET `downloaded` = `downloaded` + 1 WHERE `id` = ?', $id);

, ale líbilo by se mi něco jako

BaseModel::$db->table('book')->update(array('downloaded', '+1'));

Díky za odpověď :)

Editoval spidy (22. 5. 2011 19:07)

vrana
Člen | 131
+
0
-

'+1' uloží +1, ale dá se použít new SqlLiteral('downloaded + 1').

rixi
Člen | 109
+
-1
-

priklad

BaseModel::$db->table('book')->update(array('downloaded' => new SqlLiteral('downloaded + 1')))->where('id', 1);

Editoval rixi (28. 6. 2011 19:19)