Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » SQL Anywhere 服务器 - SQL 参考 » 使用 SQL » SQL 语句 » SQL 语句 (A-D)

 

ALTER USER 语句

使用此语句变更用户设置。

语法 1
ALTER USER user-name [ IDENTIFIED BY password ]
 [ LOGIN POLICY policy-name ]
 [ FORCE PASSWORD CHANGE { ON | OFF } ]
语法 2
ALTER USER user-name
[ RESET LOGIN POLICY ]
参数
  • user-name   用户的名称。

  • IDENTIFIED BY 子句   用户的口令。

  • policy-name   指派给用户的登录策略的名称。如果不指定 LOGIN POLICY 子句则不进行任何更改。

  • FORCE PASSWORD CHANGE 子句   控制用户登录时是否必须指定新口令。此设置将覆盖他们策略中的 password_expiry_on_next_login 选项设置。

  • RESET LOGIN POLICY 子句   将用户登录策略的设置恢复为原始值。重置登录策略后,用户就可以访问由于超出登录策略选项的限制(如 max_failed_login_attempts 或 max_days_since_login)被锁定的帐户。

注释

用户 ID 和口令不能:

口令必须是有效的标识符,或者是用单引号引上的字符串(最大 255 字节)。口令区分大小写。建议采用由 7 位 ASCII 字符组成的口令,因为如果数据库服务器不能将客户端的字符集转换为 UTF-8,其它字符可能无法正常工作。

verify_password_function 选项可用于指定函数,以实现口令规则(例如,口令至少必须包含一位)。如果使用口令验证函数,则不能在 GRANT CONNECT 语句中指定多个用户 ID 和口令。请参见verify_password_function 选项 [数据库]

如果将 password_expiry_on_next_login 值设置为 ON,则当用户下次登录时用户口令会立即过期,即使为用户指派了同一策略。可使用 ALTER USER 和 LOGIN POLICY 子句强制用户更改他们下次登录的口令。

权限

任何用户都可以更改自己的口令。而所有其它的更改则要求具有 DBA 权限。

副作用

无。

另请参见
标准和兼容性
  • SQL/2003   服务商扩充。

示例

以下示例变更了一个名为 SQLTester 的用户。口令设置为 "welcome"。为 SQLTester 用户指派了 Test1 登录策略,而且下次登录时口令不到期。

ALTER USER SQLTester IDENTIFIED BY welcome
LOGIN POLICY Test1
FORCE PASSWORD CHANGE off;