我有一个APEX应用程序,我需要用户(学生)能够登录并查看自己的信息 . 我将用户名和密码存储在我正在使用的数据库中的表中 .
有没有办法使用这些凭据能够单独登录?我该怎么办呢?
我对APEX很新,很抱歉,如果这是一个简单的问题 .
非常感谢
说每个学生只能看到他们自己的数据意味着 - 我认为(因为它是关于学生的)你的 class 中有尽可能多的数据库用户(模式) .
如果是这样,假设他们每个人都将使用他们自己的Apex开发人员及其工作区(即他们不会共享工作区),我相信你必须创建那么多的Apex开发人员并为每个开发人员分配他们自己的架构 .
这应该连接到内部工作区,以Apex管理员身份登录 .
However ,因为你必须一次创建许多用户,这种方法可能很乏味 . 相反,由于您已经拥有存储在表中的用户列表,因此可以使用 APEX_UTIL.CREATE_USER 过程并让它执行脏任务 .
APEX_UTIL.CREATE_USER
例如,如果您的表是 MY_USERS ,那么这样的脚本可以完成这项工作:
MY_USERS
begin for cur_u in (select username, password from my_users) loop apex_util.create_user(p_user_name => cur_u.username, p_web_password => cur_u.password ); end loop; end;
有关详细信息,请阅读:https://docs.oracle.com/database/apex-18.2/AEAPI/CREATE_USER-Procedure.htm#AEAPI114
1 回答
说每个学生只能看到他们自己的数据意味着 - 我认为(因为它是关于学生的)你的 class 中有尽可能多的数据库用户(模式) .
如果是这样,假设他们每个人都将使用他们自己的Apex开发人员及其工作区(即他们不会共享工作区),我相信你必须创建那么多的Apex开发人员并为每个开发人员分配他们自己的架构 .
这应该连接到内部工作区,以Apex管理员身份登录 .
However ,因为你必须一次创建许多用户,这种方法可能很乏味 . 相反,由于您已经拥有存储在表中的用户列表,因此可以使用
APEX_UTIL.CREATE_USER
过程并让它执行脏任务 .例如,如果您的表是
MY_USERS
,那么这样的脚本可以完成这项工作:有关详细信息,请阅读:https://docs.oracle.com/database/apex-18.2/AEAPI/CREATE_USER-Procedure.htm#AEAPI114