CREATE USER — define a new database role
CREATE USERname[ [ WITH ]option[ ... ] | IDENTIFIED BYpasswordoption_for_oracle] 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[, ...] | SYSIDuidwhereoption_for_oraclecan be: DEFAULT TABLESPACEtablespace| TEMPORARY TABLESPACEtablespace
IDENTIFIED BY
Used to CREATE USER statement compatible with Oracle.
option_for_oracle that
only syntax support is provided, not function support. In order to be compatible with
the Oracle grant function, it is not allowed to CREATE USER with
the names of 'connect' and 'resource' in Oracle mode. It must be used in Oracle database.
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
LightDB extension. The SQL standard
leaves the definition of users to the implementation.