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?