在Oracle Database 11g XE中,如何从已删除的工作空间中的应用程序构建器中删除应用程序?

问题描述 投票:0回答:1

我刚刚开始使用Oracle Database 11g XE学习SQL和数据库。我注意到在“应用程序生成器”部分下始终有一个示例应用程序,第一个工作区的application_ID为100。当我创建一个新的工作区时,该示例应用程序在新工作区中的ID相应地增加,因此对于我的第二个工作区,它是101,依此类推。但是,如果我删除工作区而没有先删除它的应用程序,则新应用程序的ID仍然会增加,这使我认为即使删除了工作区并删除了用户之后,该应用程序仍在某个地方……他们没有显示在任何地方,甚至不在管理员视图中...如何找到和删除这些不再属于任何工作空间的示例应用程序?谢谢

注意:如果在删除工作区之前先删除示例应用程序,那么下一个新的工作区将具有与该示例应用程序相同的ID,因此这就是为什么当我不删除应用程序时,这些应用程序仍然存在于未删除的位置删除工作区之前。

oracle11g sql-delete builder workspace
1个回答
0
投票

据我所知,一旦您放下了工作区,它的所有应用程序(以及其他所有东西-共享组件等)都会随之丢失。我认为示例应用程序ID不断增加的事实取决于某些使用某种“智能计数器” /“序列”的内部机制,即,如果删除一个应用程序,它会减少,但是-如果您删除工作空间,但不删除。请注意,这只是我的意见,我不知道它的工作原理。

仍然:要检查您当前拥有的应用程序,请以特权用户(例如SYS)的身份连接。首先,检查您拥有哪些Apex用户:

SQL> select * From all_users where username like 'APEX%' order by username;

USERNAME                          USER_ID CREATED
------------------------------ ---------- --------
APEX_INSTANCE_ADMIN_USER              156 01.06.17
APEX_LISTENER                         173 05.03.19
APEX_PUBLIC_USER                       86 10.10.16
APEX_REST_PUBLIC_USER                 174 05.03.19
APEX_050000                            87 10.10.16
APEX_050100                           154 01.06.17
APEX_180200                           178 08.03.19

7 rows selected.

SQL>

然后在某些Apex用户中查找应用程序;因为您使用的是11g XE,并且如果您不升级Apex,那么我相信您拥有APEX_040000(内置在11g XE中)。我没有它,但是我有其他版本,所以:

SQL> select workspace, application_id, application_name, owner
  2  from apex_050100.apex_applications
  3  order by application_id;

WORKSPACE       APPLICATION_ID APPLICATION_NAME               OWNER
--------------- -------------- ------------------------------ ---------------
RNAL                       100 Sample Database Application    RNAL
WEB                        101 Sample Database Application    WEB
RNAL                       129 Warehouse                      RNAL
MBUN                       130 web_service                    MBUN
ORAGIS                     131 GIS                            ORAGIS
<snip>
© www.soinside.com 2019 - 2024. All rights reserved.