Data & Databaselow risk

migrating-oracle-to-postgres-stored-procedures

Migrates Oracle PL/SQL stored procedures to PostgreSQL PL/pgSQL. Translates Oracle-specific syntax, preserves method signatures and type-anchored parameters, leverages orafce where appropriate, and applies COLLATE "C" for Oracle-compatible text sorting. Use when converting Oracle stored procedures or functions to PostgreSQL equivalents during a database migration.

github/awesome-copilot·skills/migrating-oracle-to-postgres-stored-procedures/SKILL.md
100/ 100Quality

Install this skill

Choose your coding agent and copy a project or personal installation command.

Pinned to the indexed commit
Project installation.agents/skills/migrating-oracle-to-postgres-stored-procedures
npx skills add https://github.com/github/awesome-copilot/tree/0aaced533251f5b86c69dfbc5e55db74c4b4d1af/skills/migrating-oracle-to-postgres-stored-procedures -a codex -y
Personal installation~/.agents/skills/migrating-oracle-to-postgres-stored-procedures
npx skills add https://github.com/github/awesome-copilot/tree/0aaced533251f5b86c69dfbc5e55db74c4b4d1af/skills/migrating-oracle-to-postgres-stored-procedures -a codex -g -y
Manual folder.agents/skills/migrating-oracle-to-postgres-stored-proceduresOfficial docs ↗
Project installation.claude/skills/migrating-oracle-to-postgres-stored-procedures
npx skills add https://github.com/github/awesome-copilot/tree/0aaced533251f5b86c69dfbc5e55db74c4b4d1af/skills/migrating-oracle-to-postgres-stored-procedures -a claude-code -y
Personal installation~/.claude/skills/migrating-oracle-to-postgres-stored-procedures
npx skills add https://github.com/github/awesome-copilot/tree/0aaced533251f5b86c69dfbc5e55db74c4b4d1af/skills/migrating-oracle-to-postgres-stored-procedures -a claude-code -g -y
Manual folder.claude/skills/migrating-oracle-to-postgres-stored-proceduresOfficial docs ↗
Project installation.agents/skills/migrating-oracle-to-postgres-stored-procedures
npx skills add https://github.com/github/awesome-copilot/tree/0aaced533251f5b86c69dfbc5e55db74c4b4d1af/skills/migrating-oracle-to-postgres-stored-procedures -a github-copilot -y
Personal installation~/.copilot/skills/migrating-oracle-to-postgres-stored-procedures
npx skills add https://github.com/github/awesome-copilot/tree/0aaced533251f5b86c69dfbc5e55db74c4b4d1af/skills/migrating-oracle-to-postgres-stored-procedures -a github-copilot -g -y
Manual folder.agents/skills/migrating-oracle-to-postgres-stored-proceduresOfficial docs ↗
Project installation.agents/skills/migrating-oracle-to-postgres-stored-procedures
npx skills add https://github.com/github/awesome-copilot/tree/0aaced533251f5b86c69dfbc5e55db74c4b4d1af/skills/migrating-oracle-to-postgres-stored-procedures -a cursor -y
Personal installation~/.cursor/skills/migrating-oracle-to-postgres-stored-procedures
npx skills add https://github.com/github/awesome-copilot/tree/0aaced533251f5b86c69dfbc5e55db74c4b4d1af/skills/migrating-oracle-to-postgres-stored-procedures -a cursor -g -y
Manual folder.agents/skills/migrating-oracle-to-postgres-stored-proceduresOfficial docs ↗
Project installation.agents/skills/migrating-oracle-to-postgres-stored-procedures
npx skills add https://github.com/github/awesome-copilot/tree/0aaced533251f5b86c69dfbc5e55db74c4b4d1af/skills/migrating-oracle-to-postgres-stored-procedures -a gemini-cli -y
Personal installation~/.gemini/skills/migrating-oracle-to-postgres-stored-procedures
npx skills add https://github.com/github/awesome-copilot/tree/0aaced533251f5b86c69dfbc5e55db74c4b4d1af/skills/migrating-oracle-to-postgres-stored-procedures -a gemini-cli -g -y
Native Gemini CLIgemini skills install https://github.com/github/awesome-copilot.git --scope workspace --path skills/migrating-oracle-to-postgres-stored-procedures
Manual folder.agents/skills/migrating-oracle-to-postgres-stored-proceduresOfficial docs ↗
⚠ Installation uses the open-source skills CLI. Inspect the source and permissions before running the command.

Skill instructions

View source on GitHub ↗
# Migrating Stored Procedures from Oracle to PostgreSQL

Translate Oracle PL/SQL stored procedures and functions to PostgreSQL PL/pgSQL equivalents.

## Workflow

```
Progress:
- [ ] Step 1: Read the Oracle source procedure
- [ ] Step 2: Translate to PostgreSQL PL/pgSQL
- [ ] Step 3: Write the migrated procedure to Postgres output directory
```

**Step 1: Read the Oracle source procedure**

Read the Oracle stored procedure from `.github/oracle-to-postgres-migration/DDL/Oracle/Procedures and Functions/`. Consult the Oracle table/view definitions at `.github/oracle-to-postgres-migration/DDL/Oracle/Tables and Views/` for type resolution.

**Step 2: Translate to PostgreSQL PL/pgSQL**

Apply these translation rules:

- Translate all Oracle-specific syntax to PostgreSQL equivalents.
- Preserve original functionality and control flow logic.
- Keep type-anchored input parameters (e.g., `PARAM_NAME IN table_name.column_name%TYPE`).
- Use explicit types (`NUMERIC`, `VARCHAR`, `INTEGER`) for output parameters passed to other procedures — do not type-anchor these.
- Do not alter method signatures.
- Do not prefix object names with schema names unless already present in the Oracle source.
- Leave exception handling and rollback logic unchanged.
- Do not generate `COMMENT` or `GRANT` statements.
- Use `COLLATE "C"` when ordering by text fields for Oracle-compatible sorting.
- Leverage the `orafce` extension when it improves clarity or fidelity.

Consult the PostgreSQL table/view definitions at `.github/oracle-to-postgres-migration/DDL/Postgres/Tables and Views/` for target schema details.

**Step 3: Write the migrated procedure to Postgres output directory**

Place each migrated procedure in its own file under `.github/oracle-to-postgres-migration/DDL/Postgres/Procedures and Functions/{PACKAGE_NAME_IF_APPLICABLE}/`. One procedure per file.