Ok, I am struggling to find a solution to this problem using the Zend_Db interface. I want to do the following:
$data = array( 'orders_status' => (int)$orders_status, 'last_modified' => 'now()'); $db->update(TABLE_ORDERS, $data, 'orders_id = ' . (int)$orders_id) But the update() method does not understand the now() string and sends it in the SQL as a string literal, because it gets quoted. Instead I have to do this: $now = date('Y-m-d H:i:s'); $data = array( 'orders_status' => (int)$orders_status, 'last_modified' => $now); $db->update(TABLE_ORDERS, $data, 'orders_id = ' . (int)$orders_id) This works of course, but the problem is I really need to set the value to the current date time that the query is executed, so it gets the date time stamp on the DB server, not on the PHP application server. Even though the values are going to be close, if the database is on a separate server the timestamps can be slightly different. Worse, if this code was running on a server farm for the PHP servers, each server could have slightly different timestamps, and if you are relying on the timestamps to be sequential, you can run into problems. Now clearly I can hand code the SQL inserts, but that defeats the purpose of having the insert() function. In our existing code the insert() wrapper special cases the now() string, and passes it through literally. Is there any way to do that with Zend_Db? Regards, Kendall Bennett, CEO A Main Hobbies 424 Otterson Drive, Suite 160 Chico, CA 95928 1-800-705-2215 (Toll-Free) 1-530-894-0797 (Int'l & Local) 1-530-894-9049 (Fax) http://www.amainhobbies.com