CREATE USER — define a new database role
CREATE USERname
[ [ WITH ]option
[ ... ] ] whereoption
can be: SUPERUSER | NOSUPERUSER | CREATEDB | NOCREATEDB | CREATEROLE | NOCREATEROLE | INHERIT | NOINHERIT | LOGIN | NOLOGIN | REPLICATION | NOREPLICATION | BYPASSRLS | NOBYPASSRLS | CONNECTION LIMITconnlimit
| [ ENCRYPTED ] PASSWORD 'password
' | PASSWORD NULL | VALID UNTIL 'timestamp
' | IN ROLErole_name
[, ...] | IN GROUProle_name
[, ...] | ROLErole_name
[, ...] | ADMINrole_name
[, ...] | USERrole_name
[, ...] | SYSIDuid
CREATE USER is now an alias for
CREATE ROLE.
The only difference is that when the command is spelled
CREATE USER, LOGIN
is assumed
by default, whereas NOLOGIN
is assumed when
the command is spelled
CREATE ROLE.
The CREATE USER statement is a PostgreSQL™ extension. The SQL standard leaves the definition of users to the implementation.