Hi all,
I am working on an framework that uses torque 3.2 as the ORM layer. Everything
works perfectly on MySQL 4.1 and I am right now trying to make it work on
Oracle 10g also. One of the problems i am facing is with respect to the
difference in the way oracle handles zero-length strings ('') when compared to
other dbs. In oracle zero-length strings are treated as null. If we are
inserting '' in a column and query it back with where clause --> where <column>
= '' no rows will be returned. We should rather query it with the where clause
--> where <column> is null.
On other dbs for eg., MySQL 4.1 the where clause condition should be --> where
<column> = ''.
If I change the where clause to IS NULL then the app wont work on MySQL.. If I
retain it as '' then it wont work on Oracle.
Can anyone help me with a solution or workaround for this?
One possible way to make it work is by changing the SQLExpression class to
convert the criteria to null from '' if the db is oracle. Is there anyother way
to make this work? the only restriction is that the same where clause should
work on all dbs
Thanks,
Sarathy