Re: Case insensitivity, and option?

From: Rod Taylor <rbt(at)rbt(dot)ca>
To: pgsql(at)mohawksoft(dot)com
Cc: m(at)mat(dot)cc, PostgreSQL Development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Case insensitivity, and option?
Date: 2003-03-12 17:59:10
Message-ID: 1047491946.55840.8.camel@jester
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

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

--
Rod Taylor <rbt(at)rbt(dot)ca>

PGP Key: http://www.rbt.ca/rbtpub.asc

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2003-03-12 18:21:51 Re: Roadmap for FE/BE protocol redesign
Previous Message pgsql 2003-03-12 17:57:11 Re: Case insensitivity, and option?