我正在尝试在plsql中修改用户的密码:
DECLARE
BEGIN
ALTER USER BOB IDENTIFIED BY PASS123;
END;
我在创建错误时不断收到错误,并且无法解决错误:
ORA-06550:第4行第1列:PLS-00103:遇到符号“ALTER” 当期待以下之一时:(开始案例声明退出 goto if loop mod null pragma raise返回选择更新时使用 <<继续关闭当前删除获取锁定插入打开回滚 savepoint set sql execute commit forall merge pipe purge
答案 0 :(得分:3)
根据doc
只有动态SQL才能执行以下类型的语句 PL / SQL程序单元:
数据定义语言(DDL)语句,例如CREATE,DROP,GRANT, 和REVOKE
会话控制语言(SCL)语句,例如ALTER SESSION和 设置角色
SELECT statem中的TABLE子句
DECLARE
BEGIN
EXECUTE IMMEDIATE 'ALTER USER BOB IDENTIFIED BY PASS123';
END;
答案 1 :(得分:0)
您可以使用DDL语句(更改,创建,授予等)而不使用开始 - 结束块。
通过PASS123识别的用户BOB;