Re: Case insensitive collation.

From: Malcontent <malcontent(at)msgto(dot)com>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Case insensitive collation.
Date: 2000-05-02 05:22:09
Message-ID: 390E6601.605EA78A@msgto.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

If this is not the right place to ask this question please feel free to
tell me to go away but I figure you guys would know the code best.

In a nutshell I want to use postgres as a back end to an access
database. This means that all collation done by postgres musht be case
insensitive including like clauses. Combing through the archives I
noticed that this question has been asked many times and the answer
seems to be to use *~ or to use lower(something)=lower(something).
Unfrotunately neither of these will work with access because access will
be generating the query in response to some user setting a filter or
pressing a button.

From my research I gather that I have one of two options here. One is to
overload the = and the ~~ operators using a user defined function or to
just go at the source itself and change the text_cmp in varlena.c and/or
varchareq function in varchar.c.

If I overload the function using pl/pqsql how much of a performance hit
am I taking? If I decide to rewrite the comparison functions will I
break everything and if not which other functions should I rewrite.

Also how much damage will I do if I change the NAMEDATALEN to come a
little closer to access standards (actually I was thinking of setting it
something like 64 as a compromise).

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Hiroshi Inoue 2000-05-02 05:50:42 RE: psql \l error
Previous Message Thomas Lockhart 2000-05-02 05:15:50 Re: [HACKERS] Request for 7.0 JDBC status