专业编程教程与实战项目分享平台

网站首页 > 技术文章 正文

ORA-26563--删除物化视图日志就可以了?其实还有坑

ins518 2024-10-13 06:07:43 技术文章 12 ℃ 0 评论

概述

rename的时候如果碰到这个表有物化视图会提示ORA-26563错误,如果按网上解决办法是drop materialized view log on TBL_COMM_COMMONTICKET; 那重命名后会有影响吗?会不会不产生物化视图日志?网上很多只是告诉你删除物化视图日志就可以了,但是如果删除后是会影响物化视图的,所以网上的内容还是要保持一份怀疑,最好自己测试一下。


报错截图


思路

如果在重命名Oracle表的时候出现ORA-26563: 不允许重命名此表错误,试着将表上的物化视图日志drop就可以了。


1、查看物化视图日志


2、查看是否存在对象


3、保存物化视图对象定义

-- Create table
create table MLOG$xx
(
 M_ROW$ VARCHAR2(255),
 SNAPTIME$ DATE,
 DMLTYPE$ VARCHAR2(1),
 OLD_NEW$ VARCHAR2(1),
 CHANGE_VECTOR$ RAW(255),
 XID$ NUMBER
)
tablespace DATA
 pctfree 10
 initrans 1
 maxtrans 255
 storage
 (
 initial 1
 next 1
 minextents 1
 maxextents unlimited
 pctincrease 0
 );
-- Add comments to the table 
comment on table MLOG$xxx
 is 'snapshot log for master table GLOGOWNER.xxx';

4、删除物化视图日志并重命名表


5、重建物化视图日志

记得重建回来!


6、刷新物化视图

select * from user_objects where object_type='MATERIALIZED VIEW' and object_name like '%FSL_TRUNK%';
 exec dbms_mview.refresh('MV_OTM_FSL_TRUNKSHIPMENT_DE','C');

觉得有用的朋友多帮忙转发哦!后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注下~

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表