CREATE USER — 定义一个新的数据库角色
CREATE USERname[ [ WITH ]option[ ... ] ] whereoptioncan 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。
The CREATE USER statement is a PostgreSQL extension. The SQL standard leaves the definition of users to the implementation.