Sent this to the wrong list...
--- Begin Message ---
I've found the bug in the Criteria class.

In the method Criteria.Criterion.appendPSTo(), case sensitivity is determined by the variable ignoreCase, which is defined in the Criteria class (NOT the Criterion class). This explains exactly the behavior I experienced (case sensitivity may be turned off for ALL where clause elements but not individual ones).

This bug only manifests itself when using PreparedStatements (doPSSelect()). The Criterion.appendTo() method correctly uses the local ignoreStringCase variable.

I'll create an issue in scarab and submit the patch.

-Rob

ext Thomas Fischer wrote:
As far as I know, Criterion.setIgnoreCase should do the trick. I have used
it myself with oracle.
If it does not work anymore, it is a bug. Can you please produce a test
case and create an issue in scarab ?

   Thanks,

       Thomas

Robert Dietrick <[EMAIL PROTECTED]> schrieb am 28.01.2006 05:44:30:

I'm having difficulties getting a portion of my WHERE clause to be case
insensitive with Oracle, and I'm wondering if this problem's been solved
already.

I've tried Criteria.setIgnoreCase(true), which forces all parts of the
WHERE clause to ignore case, and I've tried
Criterion.setIgnoreCase(true), which does absolutely nothing (does this
work with other databases???).

I've also tried the custom route: Criteria.add(columnName,
"UPPER("+columnName+") = " + someValue.toUpperCase()).  But this is
inherently dangerous when the value (someValue) is coming from an end
user.  (May allow users to execute arbitrary SQL.)

What I want is something which results in the left half being converted
to upper case and the right half still using a bind variable:
UPPER(columnName) = ?

Anyone know if this is possible?  I'm using the latest version (3.2).

Thanks.

-rob


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




--- End Message ---
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to