Name
ALTER USER
-- 改变数据库用户帐号.
Synopsis
ALTER USER
username
[ [ WITH ]
option
[ ... ] ]
这里
option
可以是∶
[ ENCRYPTED | UNENCRYPTED ] PASSWORD '
password
'
| CREATEDB | NOCREATEDB
| CREATEUSER | NOCREATEUSER
| VALID UNTIL '
abstime
'
输入
-
username
-
想进行更改的用户的名字。
-
[ encrypted | unencrypted ] password
-
此帐号所使用的新口令。
Encrypted
/
unencrypted
控制该口令在数据库里是否以加密形式存储.
-
CREATEDB
NOCREATEDB
-
这个子句定义该用户创建数据库的能力。
如果声明了 CREATEDB,该用户可以创建她自己的数据库。
用 NOCREATEDB 将剥夺一个用户创建数据库的能力。
-
CREATEUSER
NOCREATEUSER
-
这个子句决定一个用户能否创建新用户。
这个选项同样还令该用户成为超级用户,可以超越所有访问限制。
-
abstime
-
该用户帐号口令的有效日期(和可选的时间)。
输出
-
ALTER USER
-
更改成功的返回信息.
-
ERROR: ALTER USER: user "username" does not exist
-
如果数据库不认识你所声明的用户返回的信息.
描述
ALTER USER
用于更改用户的
PostgreSQL
帐号的属性.
没有在该命令中出现的属性保持原值.
只有一个数据库超级用户可以用这个命令更改权限和口令有效期。
普通用户只能更改他们自己的口令。
ALTER USER
无法改变一个用户的组的成员性.
用
ALTER GROUP
实现这个目地.
使用
CREATE USER
创建新用户和
DROP USER
删除用户。
用法
更改一用户口令:
ALTER USER davide WITH PASSWORD 'hu8jmn3';
更改一用户有效期
ALTER USER manuel VALID UNTIL 'Jan 31 2030';
更改一用户有效期,
声明其权限应该在用比UTC早一小时的时区记时的1998年5月4日正午失效
ALTER USER chris VALID UNTIL 'May 4 12:00:00 1998 +1';
赋予一用户创建新用户和新数据库的权限:
ALTER USER miriam CREATEUSER CREATEDB;
兼容性
SQL92
SQL92
里没有
ALTER USER
.
该标准将用户定义部分交给具体数据库实现处理.
|