Re: Problem with pgadmin II and psql
От | Dave Page |
---|---|
Тема | Re: Problem with pgadmin II and psql |
Дата | |
Msg-id | D85C66DA59BA044EB96AB9683819CF6101514E@dogbert.vale-housing.co.uk обсуждение исходный текст |
Ответ на | Problem with pgadmin II and psql (ROUWEZ Stephane <stephane.rouwez@ecolo.be>) |
Список | pgadmin-support |
> -----Original Message----- > From: Markus Brachner [mailto:m.brachner@screensavergold.com] > Sent: 25 July 2002 12:58 > To: ROUWEZ Stephane; pgadmin-support@postgresql.org > Cc: LESNE Philippe > Subject: Re: [pgadmin-support] Problem with pgadmin II and psql > > > You probably used CAPITALS - I also had this problem - it's > not a bug, it's a feature ;) I would appreciate PgAdmin using > the non-quoted mode for creating objects - or at least be > user configurable, Current development versions of pgAdmin will only use quotes where required, though this still leaves you with the "problem" that if you create a table called MyTable it is MyTable and not mytable. > because this non SQL conformant feature > confuses many users (I think). If PostgreSQL (note, *not* pgAdmin) followed the spec, then this problem would still remain. To quote from the spec, and Tom Lane: >>> 13)A <regular identifier> and a <delimited identifier> are equiva- lent if the <identifier body> of the <regular identifier> (with every letter that is a lower-case letter replaced by the equiva- lent upper-case letter or letters) and the <delimited identifier body> of the <delimited identifier> (with all occurrences of <quote> replaced by <quote symbol> and all occurrences of <dou- blequote symbol> replaced by <double quote>), considered as the repetition of a <character string literal> that specifies a <character set specification> of SQL_TEXT and an implementation- defined collation that is sensitive to case, compare equally according to the comparison rules in Subclause 8.2, "<comparison predicate>". The spec expects unquoted identifiers to be made case-insensitive by folding them to upper case. We do it by folding to lower case, instead. While this isn't 100% standard, it's unlikely to be changed. Too many applications would break... >>> In other words, you would still get the case where MyTable != mytable != MYTABLE. Regards, Dave.
В списке pgadmin-support по дате отправления: