Actually this isn't as straight forward as I thought:

It seems that on WO 4.5:

allQualifierOperators:
@"=", @"<>", @"<=", @"<", @">=", @">", @"like", @"caseInsensitiveLike"

Notice the "<>" instead of "!=" and the lack of "contains" (also the ordering is different, but not reflected here right now)
At least some (if not most) databases do treat <> and != differently for NULL values. ( someValue != NULL evaluates to TRUE where as someValue <> NULL evaluates to FALSE )

And if we want to include "contains" then maybe we should rename it to what stringForOperatorSelector: EOQualifierOperatorContains returns on WO 4.5, which would be "doesContain".

I'm not sure how compatible we should be. But my current personal preference due to the mapping of isNotEqual to either <> or != I would prefere the current GNUstep usage of != as the docs state so that it translates to what you would expect (for isNotEqual) given a NULL value. I also would consider renaming contains to doesContain but keeping it in the list, as it is a valid qualifier operator.

Can anyone with with a more current EOF version determine if these issues have been adressed in more recent versions? The documentation states that it uses != but then again, it said that in the WO 4.5 docs also. But the docs on allQualifierOperators still omit the doesContain.

I've attached an updated patch that continues to use '!=' but renames "contains" to "doesContain". (Hmm... maybe I should have added some comments stating the discrepancy from WO behavior...)

Cheers,
Dave




_______________________________________________
Bug-gnustep mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/bug-gnustep

Reply via email to