"Yannick Duch�ne (Hibou57)" wrote in message news:op.wtlur3cnule2fv@cardamome... >Le Fri, 08 Mar 2013 00:53:25 +0100, Randy Brukardt >a �crit: >> But I want to caution you that "converting to lower case" is not a great >> idea if you plan to support arbitrary Unicode strings. Such conversions >> are >> somewhat ambiguous, and tend to make strings appear similar that are >> different (and sometimes the reverse happens as well). > >If I'm not wrong, that's the reverse, the conversion to upper-case which >is the one with which you may loose the more. You're right that converting to upper case is worse, but that was my point: don't convert to *anything*. It doesn't matter what you convert to, you lose information and get the wrong answer in some cases (Turkish I's, for instance). Rather, leave the text in it's original case and use Equal_Case_Insensitive to decide whether it matches something existing. That's the rule for Ada identifiers (don't know if Gnat actually follows that, though). Admittedly, you can't do that with some databases, so that might not be an option for the OP - which is a reason not to use a database unless you really need transactions. Randy. -- "Syntactic sugar causes cancer of the semi-colons." [1] "Structured Programming supports the law of the excluded muddle." [1] [1]: Epigrams on Programming - Alan J. - P. Yale University