Skip to content

Installation Overview

orafce_no_c installs 10 schemas, one per ported package: dbms_assert, dbms_output, dbms_random, dbms_utility, oracle, plunit, plvchr, plvdate, plvstr, plvsubst. See the Compatibility chapters for exactly what each one contains.

Two install modes

Both install the exact same objects with the exact same behavior — pick whichever your environment allows:

CREATE EXTENSION Standalone SQL script
Requires Filesystem access to the PostgreSQL server's extension directory Nothing beyond an ordinary psql connection
Registers with PostgreSQL Yes — appears in pg_extension, supports DROP EXTENSION No — plain schemas and objects, no version tracking
Typical use Self-managed PostgreSQL where you (or someone) can run make install Managed/cloud PostgreSQL, or anywhere you can't place files on the server

See Installing as an Extension and Installing as Plain SQL.

The optional types add-on

Neither install mode above includes the VARCHAR2/NVARCHAR2 domain family — that's a separate, optional install, covered in its own chapter: Installing the VARCHAR2/NVARCHAR2 Types.

Before you install

Both core modes refuse to run — cleanly, with a clear error and no partial install left behind — if:

  • the real orafce extension is already installed in the target database, or
  • any of the 10 target schemas already exists in the target database.

See Why It Refuses to Install Over Real orafce for exactly why, and what to do about it if you're mid-migration and still have real orafce installed.

Continue to Installing as an Extension.