Postgres Databases

Postgres can be used for mixed transactional and analytical workloads and it is well-suited for the needs of businesses in any industry. Extensibility means Postgres keeps up with modern demands.

EDB Postgres Advanced Server

Advanced Server is Oracle database compatible, so leaving Oracle doesn’t mean starting over. It also extends PostgreSQL with security and performance capabilities for enterprises.

Also Supported by EDB


EDB is part of the extended Postgres Global Development Group and contributes as such to the development of Postgres. Additionally EDB supports various critical functions around the development of Postgres.

Compare PostgreSQL and EDB Postgres Advanced Server

* Denotes Oracle Database Compatibility


PostgreSQL EDB Postgres Advanced Server
Data Redaction *  
Password Profiles *  
EDB SQL/Protect  
Enhanced Audit Logging  
Server Procedural Language Protection (EDB*Wrap) *  


PostgreSQL EDB Postgres Advanced Server
Query Optimizer Hints *  
SQL Session/System Wait Diagnostics *  
Advanced Performance Analytics  


PostgreSQL EDB Postgres Advanced Server
Hierarchical Queries *  
22 Pre-defined, Re-usable Function Packages  
Synonyms (Public and Private) *  
Extended Functions and Operators *  
Bulk Collect and Binds *  
User Defined Object Types *  
Nested Tables *  
User Defined Exceptions *  
User Defined Packages and Functions *  
Associative Arrays *  
edb_stmt_level_txn *  
EDB*Plus *  


PostgreSQL EDB Postgres Advanced Server
Resource Management  
EDB*Loader *  
Extended Catalog Views *  

Oracle Compatibility

PostgreSQL EDB Postgres Advanced Server
Free Migration Assessment Portal in the Cloud *  
Data Type Compatibility *  
Automated Migration of Schema, Data, and Objects *  
PL/SQL Support in Stored Procedures and Triggers *  
PL/SQL Debugger *  
Pro*C Support *  
Bulk Data Loader *  
Interactive and Batch Command-Line Processor *  
Replication with Oracle (*uses EDB Postgres Replication Server) *  

Function package descriptions for EDB Postgres Advanced Server

Package Name Package Description  
DBMS_ALERT Functions that allow asynchronous notification of database events via an Alert. Using this package and triggers, an application can notify itself whenever values of interest in the database are changed.  
DBMS_AQ Database integrated Message Queuing functions allowing applications to communicate with each another via asynchronous messages to the database.  
DBMS_CRYPTO Provides functions to encrypt and decrypt stored data.  
DBMS_JOB Has been replaced by DBMS_SCHEDULER but included for compatibility with older Oracle applications.  
DBMS_LOB Functions that allow access to and manipulation of Large OBject values.  
DBMS_LOCK Provides a function interface to Lock Management services.  
DBMS_OUTPUT Allows the sending of messages from stored procedures, packages, and triggers for application or debugging use.  
DBMS_PIPE Functions that allow two or more sessions in the same database instance to communicate with one another.  
DBMS_PROFILER Provides functions to profile stored procedure workloads and identify performance bottlenecks.  
DBMS_REDACT Generic and scalable policy mechanism functions to assign different types of redaction based on column data type protecting sensitive information like Social Security or Credit Card numbers in support of security initiatives like GDPR, HIPPA and PCI-DSS.  
DBMS_SCHEDULER Job scheduler functions for creating and executing unattended repetitive tasks inside the database.  
DBMS_SQL Permits the use of dynamic SQL in procedures to allow applications to run SQL statements with unknown parameters (such as table name) until runtime.  
DBMS_RANDOM Useful functions to generate random text, numeric and date values.  
DBMS_RLS Implements row level security functions in the database blocking users from seeing each other's data in the same application.  
DBMS_SESSION Functions with the ability to enable and disable roles.  
DBMS_UTLTITY A collection of functions for getting information about various runtime operations and meta data from the database.  
UTL_ENCODE Functions to perform Base64 encoding and decoding of data intended for transport between hosts.  
UTL_FILE Allows database procedures to read and write operating system text files in an I/O stream fashion.  
UTL_HTTP Functions that provide the ability to make HTTP calls to access information on web servers.  
UTL_MAIL Provides functions to create,manage, and send email from the database including attachments, CC, and BCC.  
UTL_RAW Functions supporting the manipulation of raw data types.  
UTL_SMTP Provides functions for sending mail via SMTP according to the RFC821 specification.  
UTL_URL Functions for escaping and un-escaping URL strings.  

For complete specifications for each supported function package see the docs for EDB Postgres Advanced Server.

Frequently Asked Questions

  • Does EDB support Transparent Data Encryption (TDE) for PostgreSQL and EDB Postgres Advanced Server?

    Because EDB understands the importance of Transparent Data Encryption(TDE) to our Postgres customers, we have partnered with Thales, to ensure our customers can meet their security and compliance requirements. This includes PCI DSS compliance as well as many other security standards.

    Thales is the leading provider of Enterprise security solutions for multiple databases and sources including Postgres. We believe Thales CipherTrust Transparent Encryption is the best currently offered TDE solution for Postgres. The most notable reason being its excellent solution for Key Management and Key Rotation.

    EDB will continue to work with the community on database TDE solutions as part of the open source PostgreSQL offering. In addition to TDE we are actively pursuing solutions to ensure and improve the overall security posture of PostgreSQL including use cases for restricting Postgres super users access to data. We have some of our best people working to solve these use cases and plan to share something with the community shortly.