流行的开源关系数据库 PostgreSQL 正在获得对 MERGE 语句的支持,此举旨在简化从 SQL Server 和基于 Oracle 的系统的迁移。
随着周五(9月29日)发布的 PostgreSQL 15 候选版本和预计 10 月 13 日的全面可用性,升级承诺为开发人员提供一系列新功能。
但是对于那些关注从 Oracle 迁移到 PostgreSQL 的人来说,新的 MERGE 实现可能是关注的焦点。
MERGE 允许开发人员和 DBA 根据某些条件在表中插入、更新或删除行。
开源咨询和软件公司 Percona 的 PostgreSQL 负责人 Umair Shahid 说:“Merge 是 Oracle 和 SQL Server 都支持的 SQL 标准的一部分。但在 Postgres 中,如果你想要一个您的代码要采取的选择性操作。”
不仅意味着相同操作的代码行数更少,PostgreSQL 对 MERGE 的支持还有望使 Oracle 和 SQL Server 迁移更容易。
“MERGE 声明正在帮助用户能够相对轻松地从 Oracle 迁移到 Postgres,这是一个非常流行的用例,”Shahid 说。
他认为已经在 Oracle 和 SQL Server 中编写的 SQL 代码可以移植到 PostgreSQL,因为这三个数据库都符合 ANSI。
“代码看起来非常相似。只要数据库中存在该功能,大多数代码就可以工作。[在 PostgreSQL 15 之前] 已经在 Oracle 中使用 MERGE 功能的开发人员否则将不得不重写该代码迁移到 PostgreSQL 之后。有了这个特性,他们就不需要这样做了。Oracle 中的现有代码就可以工作,”Shahid 说。
Postgres 最初由加州大学伯克利分校的 Michael Stonebraker 和 Lawrence Rowe 于 1986 年提出[PDF] 作为 Ingres 的继任者,目前可在 PostgreSQL 许可证下使用,这是一种开源许可证,类似于 BSD 或 MIT 许可证。
尽管 PostgreSQL 已有 30 多年的历史,但由于功能的逐步改进和大量可用的 DBaaS 系统,PostgreSQL 在过去几年中取得了长足的发展。根据整理了谷歌数据以及招聘广告和网站提及的DB-Engines的数据,与去年 9 月相比,PostgreSQL 的市场份额增加了 35%,排名第四,仅次于 Oracle、MySQL 和 Microsoft SQL Server.
Shahid 说,使用或考虑使用 PostgreSQL 的其他新功能开发人员可以期待包括逻辑复制,这使开发人员可以更好地控制他们想要复制的列和不想复制的列,这一举措可以找到数据安全的用例。®
原文标题:PostgreSQL 15 promises to ease Oracle and SQL Server migrations
原文作者:Lindsay Clark
原文地址:https://www.theregister.com/2022/10/03/postgresql_15/




