Re: username length character limits?
От | Dennis Gearon |
---|---|
Тема | Re: username length character limits? |
Дата | |
Msg-id | 40E74C71.1040306@fireserve.net обсуждение исходный текст |
Ответ на | username length character limits? (Dennis Gearon <gearond@fireserve.net>) |
Список | pgsql-general |
Stephan Szabo wrote: > On Sat, 3 Jul 2004, Dennis Gearon wrote: > > >>Stephan Szabo wrote: >> >> >>>IIRC, psql (and the createuser shell script and such) treat it as if you >>>had double quoted its argument because of the way shells handle quotes >>>which would necessitate something like '"FOO"' to use a quoted uppercase >>>name. So, if you say psql FOO -U BAR, you're saying log into database >>>"FOO" as user "BAR". >>> >>> >> >>I created the user from inside of a psql session. >> >>And I cannot either connect from invoking a different psql session from the shell, >>nor from PHP using it's compiled in c library for postgres. >> >>It seems it's another gotcha with this database. I wouldn't have thought >>it would so difficult to insert upper(whatever was enterd) into the >>database, and validate it the same way. > > > Create user Foo and Create user "Foo" are creating users with different > names. Since we want to allow both names to exist at the same time and for > you to refer to either, there needs to be a mechanism for doing so. I > don't know about PHP, but as I said above, psql does not treat its > arguments as normal identifiers (thus lowercasing them) because it was > decided to be simpler for people to refer to either user. For the former, > it is foo and the latter Foo. > > > ---------------------------(end of broadcast)--------------------------- > TIP 6: Have you searched our list archives? > > http://archives.postgresql.org > > So, if I >>WANT<< a user name with case: ((A)) Creating user in psql, it will respect case automatically? To OPEN psql using that user, I have to put it in double quotes? (to those new to postgres, the '#' means superuser is logged in) ------------------------------------------------------------------- database_name# create user CasedNameForUser with password 'password'; database_name#\q user/system_prompt> psql -U "CasedNameForUser" -d dbase -p port password: Congratulations statements .... dbase_name_as_prompt ###OR### ((B)) Creating user in psql, I will have to use double quotes? To OPEN psql using that user, , it will respect case automatically? (to those new to postgres, the '#' means superuser is logged in) ------------------------------------------------------------------- database_name# create user "CasedNameForUser" with password 'password'; database_name#\q user/system_prompt> psql -U CasedNameForUser -d dbase -p port password: Congratulations statements .... dbase_name_as_prompt and the converse, if I >>WANT<< a user name withOUT case: What then?
В списке pgsql-general по дате отправления: