Subject Re: [ib-support] Case insensitive order by?
Author Jason Frey
> Do it on the client: Query the records from the database, copy the values
> to a sorted TStringList which has a case-insensitive Compare method,
assign
> the string list to the items in the listbox. Use the string list's Objects
> property to associate each string with a record from the original query so
> you can discover which record was selected.

Ehh.. Not so good when your table has the possibility of having 120k
records.
"Gee, where did all of my memory go? Why is my machine acting like it's
hung (While it loads in all 120k records)?" :)
I also remember seeing someone (Forgive me, I don't recall who) say that the
way they get around this was to create another column in the table to hold
the uppercase value of whatever they're interested in sorting by, index on
that column, and do searching against that column. After thinking about,
assuming that my understanding of upper is correct (That it doesn't use
indexes when doing upper()), that would seem to be a better solution for
this issue, in terms of performance (Though performance is still not going
to be great in my large databases, from my experience. Maybe my experience
is flawed, I'm not sure) than allowing an upper on the order by clause.
I guess I'm wondering how others have overcome case insensitive searching
(as it seems that many people would have had to). I'd rather not re-invent
the wheel if I don't have to. :)

- Jason