Ah, no, you can't do that. The stuff you put into slots are values, not sql expressions. You could call get-universal-time and somehow convert that to the same time system that now() is supposed to return, but you can't put a call in a slot.
Best, Marijn
On Tue, Dec 25, 2012 at 9:47 PM, Julien Danjou julien@danjou.info wrote:
On Tue, Dec 25 2012, Marijn Haverbeke wrote:
If I do
cl-user> (s-sql:sql (:now))
It produces "now()" for me.
Sure, for me too. So let me give you a bit more context.
If you've a class like:
(defclass user () ((mytimestamp :col-type timestamp :accessor mytimestamp)) (:metaclass dao-class))
And try to do: (setf (mytimestamp user) '(:now)) (update-dao user)
This raises things like: Value (:NOW) can not be converted to an SQL literal.
at run-time.
Maybe `setf' is not the right way to modify this field here?
-- Julien Danjou # Free Software hacker & freelance # http://julien.danjou.info