从oracle apex重设数据库用户帐户密码

我正在创建一个应用程序以更改所选数据库用户的密码。当用户选择特定数据库名称和数据库用户时,然后单击提交按钮,我应该调用更改数据库用户密码的程序。如何从oracle Apex连接到选定的数据库并执行该操作。

dominick86814082 回答:从oracle apex重设数据库用户帐户密码

据我所知,有两种方法可以更改某人的密码:

  • 以该用户身份连接
  • 以特权用户身份(例如SYS)连接

并运行这样的命令:

alter user scott identified by tiger;

由于您想对所有有权访问的数据库以及这些数据库中的每个用户执行此操作,因此我怀疑您是否知道其密码,因此我想您将以特权用户身份连接到所有这些数据库。当然,您必须知道他们的密码。

一个选择是

  • 在每个数据库中创建相同的存储过程(这将修改某人的密码)
    • 它将接受用户名及其新密码
    • 由于alter table是DDL,因此您必须使用动态SQL(execute immediate
  • 在用于连接到Apex应用程序的架构中创建到这些数据库的数据库链接
  • 根据您选择的数据库,通过数据库链接调用适当的过程,并传递所选的用户名及其新密码。如果要使用其他数据库链接名称,则可能还需要某种动态SQL。

我不知道您使用的是哪个数据库版本,但是-请查看11g的Accessing and Modifying Information in Multiple Databases,尤其是“在远程Oracle数据库中运行存储过程”一章以获取更多信息。

本文链接:https://www.f2er.com/3138752.html

大家都在问