加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何在Oracle中刷新数据字典?

发布时间:2020-12-12 13:09:13 所属栏目:百科 来源:网络整理
导读:我在oracle中删除了一些表 DROP TABLE hr.admin_emp CASCADE CONSTRAINTS; 但已删除表的主键约束仍在数据字典中(all_constraints).现在我的问题是如何更新数据字典,以便它不显示已删除表的主键?例如,我使用此查询来选择hr模式: SELECT A.TABLE_NAME,A.COLU
我在oracle中删除了一些表
DROP TABLE hr.admin_emp CASCADE CONSTRAINTS;

但已删除表的主键约束仍在数据字典中(all_constraints).现在我的问题是如何更新数据字典,以便它不显示已删除表的主键?例如,我使用此查询来选择hr模式:

SELECT A.TABLE_NAME,A.COLUMN_NAME,A.CONSTRAINT_NAME FROM ALL_CONS_COLUMNS A,ALL_CONSTRAINTS B WHERE B.OWNER='HR' AND A.OWNER='HR'AND A.CONSTRAINT_NAME = B.CONSTRAINT_NAME AND B.constraint_type='P';

结果是:

REGIONS                        REGION_ID
COUNTRIES                      COUNTRY_ID
LOCATIONS                      LOCATION_ID
DEPARTMENTS                    DEPARTMENT_ID
JOBS                           JOB_ID
EMPLOYEES                      EMPLOYEE_ID
JOB_HISTORY                    EMPLOYEE_ID
JOB_HISTORY                    START_DATE
BIN$rRfAMUTnQROvBfuhBCT6RQ==$0 ID
BIN$87Rd5FE7Rj2eQbim0H2EzA==$0 PK_B
BIN$bQeeD0M/QMSpLzYjZqAGeA==$0 PK_A
BIN$RzMu6nZiQ2yuj+4xQf7eAQ==$0 PK_A

具有奇怪表名的行是我删除的那些.

你丢弃的表是 in the recycle bin.

您的原始约束名称不可见 – 您无法再看到主键名称(在该视图中;您可以从user_recyclebin中检索它) – 但约束仍然在内部可用,因此如果您在restore the table with flashback table hr.admin_emp to before drop中可以快速恢复.

数据字典视图中显示为BIN $…的对象只有在purge回收站时才会消失.但是一旦你这样做,它们就永远消失了,如果不恢复整个数据库就无法恢复它们,所以只有在你确定不再需要它们时才这样做.

您不能,也不应该,也不能尝试手动更新任何数据字典对象或Oracle内部管理的任何其他内容.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读