Uninstalling¶
How you uninstall depends on how you installed — the two modes aren't interchangeable here.
If you installed via CREATE EXTENSION¶
One command. PostgreSQL's own extension machinery removes every object the extension owns, including all 10 schemas — nothing manual required.
If you installed via the standalone script¶
DROP EXTENSION won't work — the standalone install never registered as an extension in the first place. Run the matching generated uninstall script instead:
This runs, inside a single transaction:
DROP SCHEMA IF EXISTS dbms_assert CASCADE;
DROP SCHEMA IF EXISTS dbms_output CASCADE;
DROP SCHEMA IF EXISTS dbms_random CASCADE;
DROP SCHEMA IF EXISTS dbms_utility CASCADE;
DROP SCHEMA IF EXISTS oracle CASCADE;
DROP SCHEMA IF EXISTS plunit CASCADE;
DROP SCHEMA IF EXISTS plvchr CASCADE;
DROP SCHEMA IF EXISTS plvdate CASCADE;
DROP SCHEMA IF EXISTS plvstr CASCADE;
DROP SCHEMA IF EXISTS plvsubst CASCADE;
CASCADE here drops everything inside each schema (every function, domain, view, aggregate) along with the schema itself — including the VARCHAR2/NVARCHAR2 domain add-on if you installed it, since those domains live in the oracle schema too.
This also drops anything else you put in these schemas
If you created your own objects inside oracle, plvstr, or any of the other 9 schemas after installing orafce_no_c, CASCADE removes those too — along with anything that depends on them elsewhere in the database. Review what's in these schemas before running the uninstall script if you're not certain everything in them came from orafce_no_c itself.
Removing only the VARCHAR2/NVARCHAR2 add-on¶
There's no dedicated uninstall script for the type family on its own — see Installing the VARCHAR2/NVARCHAR2 Types for how to remove just the domains while keeping the rest of oracle intact.
Continue to Regenerating the Install Scripts.