В Oracle Database 11g XE, как удалить приложения из компоновщика приложений из удаленного рабочего пространства? - PullRequest
0 голосов
/ 21 января 2020

Я только начал изучать SQL и базы данных, используя Oracle База данных 11g XE. Я заметил, что в разделе Application Builder всегда есть Sample Application, для которого application_ID равен 100 для первой рабочей области. Когда я создаю новое рабочее пространство, идентификатор этого примера приложения в новом рабочем пространстве соответственно увеличивается, поэтому для моего второго рабочего пространства это 101 и так далее. Но если я удаляю рабочее пространство, не удаляя сначала его приложение, идентификатор новых приложений все еще увеличивается, что заставляет меня думать, что приложение все еще где-то есть, даже после того, как я удалил рабочее пространство и удалил пользователя ... Они не показываться где угодно, даже не в представлении администратора ... Как я могу найти и удалить эти примеры приложений, которые больше не принадлежат какой-либо рабочей области? Спасибо

Примечание. Если я удаляю образец приложения перед удалением рабочего пространства, то следующее новое рабочее пространство будет иметь такой же идентификатор для примера приложения, поэтому я считаю, что эти приложения все еще там, где-то были восстановлены, когда я не удаляйте приложение перед удалением рабочей области.

1 Ответ

1 голос
/ 21 января 2020

Насколько я могу судить, когда вы отбрасываете рабочее пространство, все его приложения (и все остальное - общие компоненты и т. Д. c.) Удаляются вместе с ним. Тот факт, что Sample Application 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>
...