问题标签 [materialized-views]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql - 我可以在其选择语句中仅针对三个表中的两个在提交时刷新物化视图吗?
我想使用刷新的物化视图ON COMMIT
。我的后备视图通过 DB Link 连接本地数据库中的两个表和远程数据库中的一个表。仅当对两个本地表之一进行更改时,如何才能刷新视图?
有没有其他方法可以解决这个问题?我可以让物化视图加入两个本地表并为远程数据库中的列设置 NULLS,然后在插入/更新到将填充这些字段的物化视图时触发触发器?还是对物化视图的更新会传播回源表?
我正在做这样的事情:
这REMOTE_TABLE
只是与两个本地表相关的信息的查找表。它不应该在这里驱动任何东西,我只希望物化视图在LOCAL_TABLE_A
OR LOCAL_TABLE_B
CHANGE 时更新。
oracle - 物化视图可以用作快速去特征化的大表吗?
Oracle 物化视图是否可以用于连接多个具有外键的相关表以创建一个更大的非规范化大表,该表会立即刷新?
在一些调查中,它说在使用快速刷新时不允许加入。
我可以用 Oracle 材料化视图做这种事情是我的假设是错误的吗?
oracle - 物化的变化
我在一台服务器上有一个由 DB 链接创建的物化视图。该 Mview 上正在运行一项作业。(之前使用 dbms_refresh.make 创建)。
现在我在原始表中创建了 3 个新字段。我的疑问是。
1)我是否需要再次删除并创建 Mview,如果是,我是否需要再次在主服务器上创建 Mview 日志 2)在 Mview 上运行的作业会发生什么,我需要重新创建它吗?
还有在 Mview 上创建的视图,所以 -- 如果我运行创建或替换视图查询,它会产生任何问题吗?
请指导。
谢谢!
sql - 物化视图与表格:有什么优势?
我很清楚为什么物化视图比仅查询基表更可取。不太清楚的是与仅创建另一个具有与 MV 相同数据的表的优势。MV 的唯一优势真的只是易于创建/维护吗?
MV 不等同于具有匹配模式的表和使用 MVs SELECT 语句的 INSERT INTO 吗?
意思是,您可以按如下方式创建一个 MV
您可以创建一个等效表:
并不是说易于创建/维护是不够的优势,我只是想确保我没有遗漏任何东西。
oracle - 删除后的MView问题
一世,
我在一台服务器上有一个由 DB link 创建的物化视图。该 Mview 上正在运行一项作业。(之前使用 dbms_refresh.make 进行创建)。
现在我在原始表中创建了 3 个新字段。
Mview 上正在运行作业,我放弃了 DBMS_refresh.destroy 的作业。然后删除了 Mview(我忘了在视图中删除索引)
现在,当我尝试使用之前提取的 SQL 创建 Mview 时,它给出的错误为:-
从命令的第 1 行开始的错误:
命令行错误:1 列:0 错误报告:
从命令中的第 26 行开始出错:
命令行错误:26 列:0 错误报告:SQL 错误:已关闭连接
oracle - MView“启用查询重写”用法
如果 Enable Query Rewrite 选项被禁用,MView 正在为上述查询创建,那么在创建物化视图时使用 ENABLE QUERY REWRITE 子句的目的是什么,我们可以删除它并创建它,我们是否必须在性能上妥协MView 如果我们必须评论 Enable Query Rewrite。
请详细解释一下启用查询重写选项的使用。
sql - ORACLE - 物化视图日志
我有一张带有 MVIEW 日志的表,我想知道它是否可疑:
和
我问这个问题是因为我在尝试刷新 MVIEW ORA-30036 时遇到错误:无法在撤消表空间“UNDOTBS1”中将段扩展 4,我想知道除了扩展撤消表空间之外是否可以做些什么?
提前致谢
sql - 无法在 AS400 上创建具体化查询
尝试在 as400 中创建具体化查询时收到错误消息我使用 winSql 进行连接。语法似乎有效。你能指出我做错了什么吗?
这是我要执行的语句
这是错误消息:
我也尝试创建一个直接的。
oracle - 使用源表中的虚拟列重写 Oracle 查询
我在 Oracle 11g 中有一个表 demo_fact ,它有几个虚拟列定义如下:
然后我有一个物化视图定义为
现在我希望查询重写启动以下查询:
但事实并非如此。我运行了 EXPLAIN_REWRITE,这是输出:
背景故事:我正在使用 70M 行和 50 个虚拟列(它们都具有相同的结构,上面的简单 case 语句,但具有不同的比较列和不同的结果列)
这个问题似乎只在事实表具有虚拟列时才会出现,但是将它们更改为非虚拟会消耗太多磁盘空间。为什么 Oracle 不重写查询?我能做些什么来修复它?