如何在 postgresql 中创建包含 dblink 的 MVIEW
Posted
技术标签:
【中文标题】如何在 postgresql 中创建包含 dblink 的 MVIEW【英文标题】:How to create MVIEW containing dblink in postgresql 【发布时间】:2020-09-21 19:48:44 【问题描述】:我从 oracle 数据库中提取 MVIEW 语句并在 postgresql db 中执行这些语句。
我得到以下错误:
错误:“@”处或附近的语法错误。 MVIEW 语句的语法是:CREATE Materialized view XYS as select ***** from target@dblink.
我不确定 postgresql mview 是否识别或解析 '@' 符号。请帮忙。
请帮忙。
【问题讨论】:
【参考方案1】:SQL 是标准化的,但每个数据库都有自己的方言,所以不能指望非标准的 SQL 语句从 Oracle 移植到 PostgreSQL。
您将在 PostgreSQL 中使用外部表而不是使用数据库链接,因此根据目标表的位置,您将安装 postgres_fdw 或 oracle_fdw。
此外,CREATE MATERIALIZED VIEW
语句在 PostgreSQL 和 Oracle 中有所不同。 PostgreSQL 在 Oracle 中只有所谓的 REFRESH COMPLETE ON DEMAND
,所以您可能需要重新设计一点。
【讨论】:
以上是关于如何在 postgresql 中创建包含 dblink 的 MVIEW的主要内容,如果未能解决你的问题,请参考以下文章
如何在 postgresql 中创建只读视图,类似于 oracle?