È stata pubblicata la versione 2.1 del progetto IvorySQL, che sviluppa l'edizione del DBMS PostgreSQL, fornendo uno strato per garantire la compatibilità con le applicazioni progettate per lavorare con il DBMS Oracle. L'estensione si sviluppa apportando modifiche al codice sorgente aggiornato di PostgreSQL e gli sviluppatori affermano la possibilità di utilizzare IvorySQL come sostituzione trasparente dell'ultima versione di PostgreSQL, la cui differenza risiede nella configurazione "compatible_db", che include la modalità di compatibilità con Oracle. Il codice è scritto in linguaggio C e distribuito con licenza Apache 2.0.
IvorySQL implementa il linguaggio procedurale PL/iSQL, che replica la sintassi PL/SQL, e supporta pacchetti in stile Oracle e operazioni sui pacchetti, come "CREATE PACKAGE". In IvorySQL è anche supportata la sintassi specifica di Oracle per le operazioni, le espressioni e gli operatori ALTER TABLE, DELETE, UPDATE, CONNECT BY, GROUP BY, UNION e MINUS, con un insieme di funzioni e tipi compatibili con Oracle. Per emulare funzioni, tipi e pacchetti Oracle, IvorySQL utilizza il codice dell'estensione PostgreSQL Orafce.
Nella nuova versione di IvorySQL è stato effettuato il passaggio al codice sorgente di PostgreSQL 15.1 ed è stato implementato il supporto per indici unici globali, creati mediante l'espressione "CREATE UNIQUE INDEX global_index ON idxpart(bid) GLOBAL". Tali indici possono essere utilizzati per creare un indice unico per una tabella partizionata, che mantiene l'unicità per tutte le partizioni quando si eseguono query utilizzando una chiave non legata alle partizioni.
Fonte: opennet.ru
