SQL> select * from v$version;
BANNER
-------------------------------------------------------------------------------- Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Production PL/SQL Release 11.1.0.7.0 - Production CORE 11.1.0.7.0 Production TNS for Linux: Version 11.1.0.7.0 - Production NLSRTL Version 11.1.0.7.0 - ProductionSQL> select release_name from fnd_product_groups;
RELEASE_NAME
-------------------------------------------------- 12.1.1SQL>
1.更改sysadminpassword
1.1 假设有shellpassword,可通过CPASS工具进行更改: FNDCPASS apps/appspwd 0 Y system/manager USER SYSADMIN newspassword演示:
-bash-3.2$ FNDCPASS apps/apps 0 Y system/manager USER SYSADMIN welcome1 Log filename : L5818900.log Report filename : O5818900.out1.2 假设有appspassword,可通过fnd_user_pkg存储过程进行更改: declare l_flag boolean; begin l_flag = fnd_user_pkg.change_password('sysadmin','newpassword'); end;
演示:
SQL> set serveroutput on SQL> DECLARE 2 l_flag BOOLEAN; 3 BEGIN 4 l_flag := fnd_user_pkg.changepassword ('sysadmin', 'welcome2'); 5 DBMS_OUTPUT.put_line ( 'l_flag = ' 6 || CASE l_flag 7 WHEN TRUE 8 THEN 'true' 9 ELSE 'false' 10 END 11 ); 12 END; 13 / l_flag = truePL/SQL procedure successfully completed.
SQL> commit; --不要忘了提交,不然不生效
Commit complete.
SQL>
2.验证登录password是否正确 2.1 通过fnd_user_pkg.validatelogin进行验证: 演示: SQL> DECLARE 2 l_flag BOOLEAN; 3 BEGIN 4 l_flag := fnd_user_pkg.validatelogin ('sysadmin', 'welcome2'); 5 DBMS_OUTPUT.put_line ( 'l_flag = ' 6 || CASE l_flag 7 WHEN TRUE 8 THEN 'true' 9 ELSE 'false' 10 END 11 ); 12 END; 13 / l_flag = truePL/SQL procedure successfully completed.
SQL>
2.2 通过fnd_web_sec.validate_login过程进行验证: 演示: SQL> SELECT fnd_web_sec.validate_login ('sysadmin', 'welcome2') FROM DUAL;FND_WEB_SEC.VALIDATE_LOGIN('SYSADMIN','WELCOME2')
-------------------------------------------------------------------------------- YSQL>
----------------------
虎子自己改好的。
--set serveroutput on DECLARE l_flag BOOLEAN; BEGIN l_flag := fnd_user_pkg.changepassword ('sysadmin', 'sysadmin'); END;
set serveroutput on --这里是为输出准备的,单独运行这一行 DECLARE l_flag BOOLEAN; BEGIN l_flag := fnd_user_pkg.changepassword ('sysadmin', 'sysadmin'); DBMS_OUTPUT.put_line ( 'l_flag = '||CASE l_flag WHEN TRUE THEN 'true' ELSE 'false' END ); END; /