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?
---------------------------(end of broadcast)---------------------------
TIP 2: you can get off all lists at once with the unregister command
(send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])