【发布时间】:2015-10-02 23:03:51
【问题描述】:
这个 plsql 正在返回错误:
ORA-00922:缺少或无效选项
DECLARE
BEGIN
EXECUTE IMMEDIATE 'ALTER USER upper(:USERNAME) IDENTIFIED BY :NEW_PASSWORD REPLACE :OLD_PASSWORD';
END;
【问题讨论】:
这个 plsql 正在返回错误:
ORA-00922:缺少或无效选项
DECLARE
BEGIN
EXECUTE IMMEDIATE 'ALTER USER upper(:USERNAME) IDENTIFIED BY :NEW_PASSWORD REPLACE :OLD_PASSWORD';
END;
【问题讨论】:
ALTER 所属的 DDL 语句不能包含绑定变量 - :USERNAME, :NEW_PASSWORD, :OLD_PASSWORD
使用
EXECUTE IMMEDIATE 'ALTER USER ' || upper(:USERNAME) || ' IDENTIFIED BY ' || :NEW_PASSWORD || ' REPLACE ' || :OLD_PASSWORD;
改为。
【讨论】: