用于EBS数据库用户的Oracle密码生成器

用于EBS数据库用户的Oracle密码生成器,oracle,plsql,Oracle,Plsql,我有一个任务,需要更改当前EBS和Oracle 12.1的密码。我已经创建了如何一次完成管理的查询: select 'FNDCPASS APPS/atesta 0 Y SYSTEM/test ORACLE '||oracle_username||' '||password||'' oracle_username from FND_ORACLE_USERID where READ_ONLY_FLAG='A' 所以我的问题是如何用随机生成的密码替换查询中的密码字? 密码必须至少包含15个字符、1个

我有一个任务,需要更改当前EBS和Oracle 12.1的密码。我已经创建了如何一次完成管理的查询:

select 'FNDCPASS APPS/atesta 0 Y SYSTEM/test ORACLE '||oracle_username||' '||password||'' oracle_username from FND_ORACLE_USERID
where READ_ONLY_FLAG='A'
所以我的问题是如何用随机生成的密码替换查询中的密码字? 密码必须至少包含15个字符、1个特殊字符、一个数字和一个大写字母

有什么想法吗

谢谢

您可以创建一个函数来返回此类随机密码,并在查询中使用它: -功能: 具有 函数get_rand_passn in number返回varchar2 as res varchar215; 开始 环 res:=DBMS_RANDOM.STRING'p',15; 退出时 regexp_likeres,“[^a-zA-Z0-9]”-特殊字符 和regexp_likeres,'\d'-至少一个数字 和regexp_likeres,“[A-Z]”-至少一个大写字母 ; 端环; 返回res; 终止 -功能结束 -测试查询: 选择 获取\u rand\u passdbms\u random.value pass 来自双重; 完整示例:

具有 函数get_rand_passn in number返回varchar2 as res varchar215; 开始 环 res:=DBMS_RANDOM.STRING'p',15; 退出时 regexp_likeres,“[^a-zA-Z0-9]”-特殊字符 和regexp_likeres,'\d'-至少一个数字 和regexp_likeres,“[A-Z]”-至少一个大写字母 ; 端环; 返回res; 终止 选择 获取\u rand\u passdbms\u random.value pass 来自双重 通过levelV连接 h@l`kEb4=-C