I’d like to have database agnostic code, however I have been
unsuccessful writing conditions that work for both postgres and mysql
for the following:
postgres only
conditions = [“curtain_at + CAST (CAST (duration AS VARCHAR) || ’
SECOND’ AS INTERVAL) >= ? AND curtain_at < ?”, Time.now, Time.now +
2.hours]
MySQL only
conditions = [“curtain_at + INTERVAL duration SECOND >= ? and
curtain_at < ?”, Time.now, Time.now + 2.hours]
Concert.find(:all, :conditions => conditions)
Can anyone lend some SQL expertise?
As a last resort, how can I determine what the current database is so
I can selectively set conditions?