The release of IvorySQL 2.1 has been published, developing the PostgreSQL DBMS edition and providing a layer for compatibility with applications designed to work with Oracle DBMS. The extension is developed by making modifications to the fresh PostgreSQL codebase, and the developers claim that IvorySQL can be used as a transparent replacement for the latest version of PostgreSQL, differing only by the appearance of the "compatible_db" configuration, which includes compatibility mode with Oracle. The code is written in C and is distributed under the Apache 2.0 license.
IvorySQL implements the procedural language PL/iSQL, which mimics the PL/SQL syntax, and supports packages in Oracle style and operations with packages such as "CREATE PACKAGE". IvorySQL also supports Oracle-specific syntax for operations, expressions, and operators such as ALTER TABLE, DELETE, UPDATE, CONNECT BY, GROUP BY, UNION, and MINUS, providing an Oracle-compatible set of functions and types. To emulate Oracle functions, types, and packages in IvorySQL, the PostgreSQL extension Orafce is utilized.
The new version of IvorySQL has transitioned to the PostgreSQL 15.1 codebase and has implemented support for global unique indexes, which are created using the expression "CREATE UNIQUE INDEX global_index ON idxpart(bid) GLOBAL". Such indexes can be used to create a unique index for a partitioned table, maintaining uniqueness across all partitions when queried using a non-partitioned key.
Source: opennet.ru
