CREATE USER — 定义新数据库角色
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
现为 CREATE ROLE
的一个别名。唯一的区别是当命令写为 CREATE USER
时,默认情况下会假定 LOGIN
,而当命令写为 CREATE ROLE
时,默认情况下会假定 NOLOGIN
。
CREATE USER
语句是 PostgreSQL 扩展。SQL 标准将用户定义留给实现。