Re: Case insensitivity, and option?

From: "Dwayne Miller" <dmiller(at)espgroup(dot)net>
To: PostgreSQL Development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Case insensitivity, and option?
Date: 2003-03-12 18:35:26
Message-ID: 3E6F7DEE.1040706@espgroup.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

I know that the MSSQL code works because the default collation sequence
for character fields is case-insensitive. You can change it for each
field independantly to be case sensitive, local specific, etc. I'm not
sure if PG supports a collation sequence attribute on column
definitions/indexes.

Rod Taylor wrote:

>On Wed, 2003-03-12 at 12:57, pgsql(at)mohawksoft(dot)com wrote:
>
>
>>>--le 12/03/2003 09:03 -0500, mlw écrivait :
>>>| I was at a client office reviewing some code. They use MSSQL and I |
>>>noticed that:
>>>|
>>>| select * from table where field = 'blah';
>>>| gave the same results as:
>>>| select * from table where field = 'BLah';
>>>|
>>>| I was shocked. (a) because I know a lot of my code could be easier to
>>>| write, and (b) that their code would break on every other database I
>>>am | aware of. Does anyone know about this?
>>>|
>>>| Is it practical/desirable for PostgreSQL to have this as a
>>>configuration | setting?
>>>
>>>Well, I quite don't see any difference with writing :
>>>select * from table where lower(field) = lower('BLah');
>>>
>>>
>>That would probably require an extra index, especially if 'field' is a
>>primary key.
>>
>>
>
>I don't know about MSSql, but on MySQL you also require a different
>index for a case sensitive comparison. Problem is, they don't (didn't)
>support functional indexes -- so you simply couldn't make one.
>
>End up with: WHERE field = 'var' and strcasecmp(field, 'var') everywhere
>
>
>

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Dave Page 2003-03-12 18:41:50 Re: Roadmap for FE/BE protocol redesign
Previous Message Merlin Moncure 2003-03-12 18:31:48 Re: Roadmap for FE/BE protocol redesign