Comparison of application development capabilities¶
データベースは今日のデータ駆動型企業の基盤であり、アプリケーションはますますデータ集約型になっています。次に、ベンダーは、複雑なタスクを実行するための柔軟性とシンプルな方法を求めるアプリケーション開発者のニーズをサポートするために、データベースソリューションを継続的に強化しています。たとえば、トリガー、ファンクション、およびストアドプロシージャに対して複数のサーバーサイド言語をサポートできるデータベースでは、開発者はクライアント、中間層、およびデータベースサーバーのプログラミングの両方で言語を選択できます。ユーザー定義オブジェクト型のようなオブジェクト指向機能により、データベースにデータの現実の表現を保存できるため、開発がより簡単、迅速、かつ理解しやすくなります。
Application development |
Oracle Enterprise |
EDB Postgres Advanced Server |
|---|---|---|
IDE |
Yes <br/> SQL Developer |
Yes <br/> Postgres Enterprise Manager |
Database server programming language |
Yes <br/> PL/SQL (block structured language) |
Yes <br/> EDB SPL (PL/SQL compatible) (block structured language) |
Additional programming languages for database server stored procedures, triggers, and functions |
Yes <br/> Java, C, .NET (C#, Visual Basic) |
Yes <br/> PL/pgSQL (PostgreSQL’s procedural language), C, C++, PL/Perl, Python, PL/Tcl |
JDBC support |
Yes |
Yes <br/> EDB JDBC Connector |
ODBC support |
Yes |
Yes <br/> EDB ODBC Connector |
.NET support |
Yes |
Yes <br/> EDB .NET Connector |
OCI support |
Yes |
Yes ✓ <br/> EDB OCL Connector |
PL/SQL debugger |
Yes <br/> SQL Developer |
Yes <br/> Postgres Enterprise Manager |
Stored procedures |
Yes |
Yes ✓ |
Named parameter notation for stored procedures |
Yes |
Yes ✓ |
Triggers |
Yes |
Yes ✓ |
REF cursors |
Yes |
Yes ✓ |
Anonymous blocks |
Yes |
Yes ✓ |
Bulk collect/bind |
Yes |
Yes ✓ |
Associative arrays |
Yes |
Yes ✓ |
Nested tables |
Yes |
Yes ✓ |
VARRAYS |
Yes |
Yes ✓ |
Hierarchical queries |
Yes |
Yes ✓ |
Parallel query |
Yes |
Yes ✓ |
PL/SQL supplied packages |
Yes |
Yes <br/> (See EDB Postgres Advanced Serverと互換性のあるパッケージのサポート) |
PRAGMA RESTRICT_REFERENCES |
Yes |
Yes ✓ |
PRAGMA EXCEPTION_INIT |
Yes |
Yes ✓ |
PRAGMA AUTONOMOUS_TRANSACTION |
Yes |
Yes ✓ |
User-defined functions |
Yes |
Yes |
User-defined objects |
Yes |
Yes |
User-defined exceptions |
Yes |
Yes ✓ |
EDB Postgres Advanced Serverと互換性のあるパッケージのサポート¶
- EDBは、パッケージで最も人気のある機能に焦点を当てています。一部のパッケージでは、すべてのOracle機能がサポートされているわけではありません。具体的な詳細については、
EDB Postgres Advanced Server のドキュメントを参照してください。
Package name |
Package description |
|---|---|
DBMS_ALERT |
Functions that allow asynchronous notification of database events by way of 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 asynchronous message queuing provides a flexible mechanism for integrating applications across the enterprise by communicating activities and exchanging a variety of information payloads. |
DBMS_AQADM |
Provides procedures to create and manage queues and queue tables. |
DBMS_CRYPTO |
Provides functions to encrypt and decrypt stored data. |
DBMS_JOB |
Was replaced by DBMS_SCHEDULER but is 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_MVIEW |
Provides procedures to manage and refresh materialized views and their dependencies. |
DBMS_OUTPUT |
Allows sending 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_RANDOM |
Useful functions to generate random text, numeric, and date values. |
DBMS_REDACT |
Redaction prevents a user from seeing all or portions of sensitive data. |
DBMS_RLS |
Implements row-level security functions in the database, blocking users from seeing each other’s data in the same application. |
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_SESSION |
Functions with the ability to enable and disable roles. |
DBMS_UTILITY |
A collection of functions for getting information about various runtime operations and metadata 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 enable you 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 manipulating raw data types. |
UTL_SMTP |
Provides functions for sending email via SMTP according to the RFC821 specification. |
UTL_TCP |
Provides procedures and functions to enable PL/SQL applications to communicate with external TCP/IP-based servers using TCP/IP. |
UTL_URL |
Functions for escaping and “unescaping” URL strings. |