Oracle11g 在Oracle 11g上使用Fast Refrese创建物化视图
在一个包含大量列、索引和约束的表上创建物化视图时,我遇到了一个奇怪的问题 我尝试运行命令: 创建物化视图mvX 并行生成立即 刷新快如 从表名称中选择* 运行我得到的命令后:“无法从复杂查询创建快速刷新物化视图” 所以我运行命令: dbms_mview.explain_mview('SELECT*FROM table_name')) 并在REFRESH\u FAST\u检查mv\u capabilities\u表插入后,出现以下消息: “此类型不支持列表中的内联视图或子查询”Oracle11g 在Oracle 11g上使用Fast Refrese创建物化视图,oracle11g,materialized-views,Oracle11g,Materialized Views,在一个包含大量列、索引和约束的表上创建物化视图时,我遇到了一个奇怪的问题 我尝试运行命令: 创建物化视图mvX 并行生成立即 刷新快如 从表名称中选择* 运行我得到的命令后:“无法从复杂查询创建快速刷新物化视图” 所以我运行命令: dbms_mview.explain_mview('SELECT*FROM table_name')) 并在REFRESH\u FAST\u检查mv\u capabilities\u表插入后,出现以下消息: “此类型不支持列表中的内联视图或子查询” 我在表上创建了一个
帮助?表中的一列可能是计算列/虚拟列吗?如果有,我会调查它在这种情况下可能不起作用的可能性。这是我能想到的MV功能在您的情况下会出现这样一个错误的唯一原因。听起来这个表实际上是一个视图。否。不是。定义一个表。你最好显示创建mv所用的所有代码,测试功能,然后显示它是一个表而不是一个视图。创建:创建物化视图mvX并行构建立即刷新快如选择*从表\u名称测试:调用dbms\u mview。解释\u mview('SELECT*FROM table\u name'))并从mv_能力_表中选择*。对象类型:从用户对象中选择对象类型,其中对象名称='表名称';(返回表)