We developed our OfBiz application on a mysql database and all works fine. 
Deploying the application on the client server with Oracle database I got
exceptions with
the sandbox:
      "ORA-01861: literal does not match format string"

This is a problem with the date conversion. 
On MySql, the following SQL Statement is used
         SELECT .... WHERE RUN_TIME <= '2007-05-15 07:45:10.875' AND ....
Using an Oracle database, this statement is wrong and generates the
ORA-01861 error.
The statement should look like this:
         SELECT .... WHERE RUN_TIME <= TO_DATE('2007-05-15 07:45:10',
'YYYY-MM-DD HH:MI:SS') AND ....

It works fine if the query is generated with the PreparedStatement of the
driver. 
But why the hell is this not always the case???

The call of
    delegator.storeByCondition("JobSandbox", updateFields, mainCondition);
is creating a where statement BY HAND!!! (And of course this statement is
not generic and does not
work with a oracle database).

Michael

PS: Probably I will fix this in my ofbiz version, but that will be a big
redesign (I don't think I can create a patch 
out of this. It's a redesign!).
-- 
View this message in context: 
http://www.nabble.com/Problems-with-Oracle-Database-tf3756432.html#a10616881
Sent from the OFBiz - User mailing list archive at Nabble.com.

Reply via email to