orafce_no_c Documentation¶
orafce_no_c is a pure PL/pgSQL and SQL reimplementation of a substantial subset of orafce, the PostgreSQL extension that emulates a slice of Oracle's built-in functions and packages. This is version 1.0.
In plain terms: real orafce is compiled C code, which requires filesystem access to your PostgreSQL server's own extension directory — something most managed and cloud PostgreSQL offerings don't grant. orafce_no_c contains no C code at all, so it installs anywhere plain SQL can run: as a genuine CREATE EXTENSION, if you have the filesystem access, or as a single script you run with psql -f, if you don't.
Where to start¶
If you're new to orafce_no_c, read the books in this order:
- About — why orafce_no_c exists, how to find out which parts of orafce your own code actually uses, the VARCHAR2/NVARCHAR2 type workaround, and the full function-by-function compatibility reference.
- Installation — installing as an extension or as plain SQL, installing the optional types add-on, why it refuses to install alongside real orafce, and uninstalling.
- Differences — every documented behavioral difference from real orafce, and every confirmed bug found in real orafce itself during development, so you can decide for yourself whether any of it matters for your use case.
How this site is organised¶
Book (top tab, e.g. "About")
└── Chapter (left-hand menu, e.g. "VARCHAR2 and NVARCHAR2")
└── Section (right-hand "On this page" menu, e.g. "Rewriting your code")
- Pick a book from the tabs across the top of the page.
- Pick a chapter from the menu on the left — this changes depending on which book you're in.
- Use the "On this page" menu on the right to jump to a section within the current chapter.
- Use the search box at the top of the page to find anything by keyword, across every book at once.
orafce_no_c is published and maintained by Pebble IT Solutions Pty Ltd, Australia. Source code: gitlab.com/pebble-it/Solutions/orafce_no_c_build. Licensed under the MIT Licence.