Oracle → PostgreSQL Migration Assessment — How to Prepare Your Upload
This tool accepts any clean Oracle SQL dump that contains
PACKAGE, PACKAGE BODY, PROCEDURE, or FUNCTION code.
There is no strict format — if the dump contains real Oracle PL/SQL code line by line,
the analyser will process it correctly.
Uploaded .zip files are processed entirely in RAM and
are never written to disk.
They are automatically deleted immediately after the report is generated.
1. Extract PL/SQL Source Code From Oracle
Run the following SQL query to retrieve all PL/SQL objects:
SELECT
(CASE WHEN line = 1 THEN 'CREATE OR REPLACE ' || text ELSE text END) AS code_line
FROM all_source
WHERE owner = 'your_schema_owner'
AND type IN ('PROCEDURE', 'FUNCTION', 'PACKAGE', 'PACKAGE BODY','TRIGGER')
ORDER BY name, type, line;
This ensures each object begins with
CREATE OR REPLACE, matching PostgreSQL and migration tool expectations.
2. Export Code as Raw Text (.sql)
Your goal is to produce a clean SQL text file — no INSERTs, no CSV headers.
DBeaver (Recommended)
- Run the query and make sure the result grid contains a single column:
CODE_LINE.
- Best option (most predictable): Advanced Copy
- Select all cells in the
CODE_LINE column.
- Right-click → Advanced Copy (or press Ctrl+Shift+C).
- Choose output format TXT (values only), set Row delimiter to LF (\n).
- Disable column names / row numbers (values only).
- Paste into a new file and save as
dump.sql (UTF-8).
- Alternative: Export Data
- Right-click the results grid → Export Data.
- Select format TXT (preferred over CSV for this use-case).
- In formatting/settings: set Print header = false and Show header delimiter = false.
- Export only the
CODE_LINE column.
- Save as
dump.sql (UTF-8).
Oracle SQL Developer (Script Output + SPOOL)
- Open a SQL Worksheet and switch to Script Output execution (run as script with F5, not Ctrl+Enter).
- Run the following script (adjust the output path and schema owner):
-- Make output "flat" (no headers, no paging)
SET HEADING OFF
SET FEEDBACK OFF
SET PAGESIZE 0
SET VERIFY OFF
SET ECHO OFF
SET TRIMSPOOL ON
SET LINESIZE 32767
SET LONG 1000000
SET LONGCHUNKSIZE 32767
SPOOL C:\temp\dump.sql
SELECT
(CASE WHEN line = 1 THEN 'CREATE OR REPLACE ' || text ELSE text END) AS code_line
FROM all_source
WHERE owner = 'YOUR_SCHEMA_OWNER'
AND type IN ('PROCEDURE', 'FUNCTION', 'PACKAGE', 'PACKAGE BODY')
ORDER BY name, type, line;
SPOOL OFF
After spooling, zip dump.sql and upload the .zip file.
3. Zip & Upload
Compress the SQL file into a .zip archive and upload it under
“1. Upload ZIP” on the main page.