Re: Locale-dependent case conversion in {identifier}
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Nicolai Tufar <ntufar@apb.com.tr>
Cc: pgsql-hackers@postgresql.org
Date: 2002-11-30T16:02:19Z
Lists: pgsql-hackers, pgsql-general
Nicolai Tufar <ntufar@apb.com.tr> writes: > Historically programs that operate in Turkish locale have > chosen to hardcode the capitalisation of "i" in system > messages and identifier names like this: > Lower: "I" -> "i" and "Y'" -> "i". > Upper: "y'" -> "I" and "i" -> "I". If that's the behavior you want, why don't you set up a variant locale definition that does it that way? That would fix *all* your locale- dependent programs, not just Postgres ... > Would it be acceptable if I submit a path that applies this > special logic in src/backend/parser/scan.l if the locale is "tr_TR"? It really seems like an inappropriate wart to me :-( > Because for many folks setting locale to Turkish would > render their database unusable. For, god forbid, if your > sql has a column name written in capitlas including "I". > It is not working. I am not seeing why this is any worse than the universal problems of using upper-case letters without double-quoting 'em. If you consistently spell the name the same way, you will not have a problem; if you don't, you might have a problem, but why is it worse than anyone else's? regards, tom lane