migrating-oracle-to-postgres-stored-procedures
Permite que seu agente migre procedimentos armazenados Oracle PL/SQL para PostgreSQL PL/pgSQL. Ele traduz a sintaxe específica do Oracle e preserva as assinaturas de método.
O que ela faz
Esta ferramenta ajuda a transformar códigos de procedimentos (chamados 'stored procedures') de um banco de dados Oracle para um banco de dados PostgreSQL. Ela converte a linguagem e as regras específicas do Oracle para que funcionem no PostgreSQL.
Quando usar
- ✓Ao migrar um sistema do Oracle para o PostgreSQL.
- ✓Quando você precisa reescrever procedimentos antigos para um novo banco de dados.
- ✓Para garantir que a lógica do seu código funcione corretamente após a mudança de banco.
Exemplo do que pedir para a IA
“Transforme este procedimento Oracle para PostgreSQL: [cole o código do procedimento aqui]”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
A ferramenta lê o código original do Oracle, aplica regras para traduzir a linguagem e a estrutura para o formato do PostgreSQL, e salva o novo código em um arquivo.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add github/awesome-copilot --skill migrating-oracle-to-postgres-stored-proceduresOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/github/awesome-copilot/main/skills/migrating-oracle-to-postgres-stored-procedures/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Migrando Stored Procedures de Oracle para PostgreSQL
Traduza stored procedures e funções Oracle PL/SQL para equivalentes PostgreSQL PL/pgSQL.
Fluxo de Trabalho
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
Passo 1: Ler o procedimento fonte Oracle
Leia a stored procedure Oracle de .github/oracle-to-postgres-migration/DDL/Oracle/Procedures and Functions/. Consulte as definições de tabelas/views Oracle em .github/oracle-to-postgres-migration/DDL/Oracle/Tables and Views/ para resolução de tipos.
Passo 2: Traduzir para PostgreSQL PL/pgSQL
Aplique estas regras de tradução:
- Traduza toda a sintaxe específica do Oracle para equivalentes do PostgreSQL.
- Preserve a funcionalidade original e a lógica de fluxo de controle.
- Mantenha parâmetros de entrada ancorados por tipo (por exemplo,
PARAM_NAME IN table_name.column_name%TYPE). - Use tipos explícitos (
NUMERIC,VARCHAR,INTEGER) para parâmetros de saída passados para outros procedimentos — não os ancore por tipo. - Não altere as assinaturas de métodos.
- Não prefixe nomes de objetos com nomes de schema, a menos que já estejam presentes no fonte Oracle.
- Deixe o tratamento de exceções e a lógica de rollback inalterados.
- Não gere instruções
COMMENTouGRANT. - Aplique a collation intencionalmente ao ordenar texto:
- Use
COLLATE "C"apenas quando for necessária ordenação binária compatível com Oracle e nenhuma outra ordem de classificação for especificada. - Se o Oracle usou ordenação linguística explícita (por exemplo,
NLS_SORT = French), mapeie para uma collation de locale PostgreSQL explícita em vez de"C". - Use
SELECT collname, collprovider, collcollate, collctype FROM pg_collation ORDER BY collname;para descobrir collations no ambiente de destino.
- Use
- Trate
UNION ALLcomo um ponto de verificação de revisão. Valide a qualidade do plano por branch e reestruture se o planejamento de branch combinado causar regressões (por exemplo, varreduras sequenciais inesperadas em tabelas grandes). - Utilize a extensão
orafcequando melhorar a clareza ou a fidelidade.
Consulte as definições de tabelas/views PostgreSQL em .github/oracle-to-postgres-migration/DDL/Postgres/{ProjectName}/Tables and Views/ para detalhes do schema de destino.
Passo 3: Escrever o procedimento migrado para o diretório de saída do Postgres
Coloque cada procedimento migrado em seu próprio arquivo sob .github/oracle-to-postgres-migration/DDL/Postgres/{ProjectName}/Procedures and Functions/{PACKAGE_NAME_IF_APPLICABLE}/. Um procedimento por arquivo.
{ProjectName}é o nome do assembly/pasta do projeto com espaços normalizados para-(por exemplo,MyApp.DataAccess). Isso corresponde ao caminho usado pelo agente e outras habilidades de migração.
Perguntas frequentes
O que são 'stored procedures'?
São conjuntos de comandos de banco de dados que ficam armazenados no próprio banco para serem executados quando chamados, como pequenas 'funções' do banco de dados.
Por que preciso converter o código?
Cada banco de dados (como Oracle e PostgreSQL) tem sua própria linguagem e regras. O código escrito para um não funciona diretamente no outro.
A ferramenta copia tudo exatamente igual?
Ela tenta manter a funcionalidade original e a estrutura do código, mas faz adaptações necessárias para que funcione no PostgreSQL, como ajustar tipos de dados e regras de ordenação de texto.
Detalhes
Descrição original do autor
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 explicit collation mapping (`COLLATE "C"` only when appropriate, locale collations when required). Use when converting Oracle stored procedures or functions to PostgreSQL equivalents during a da
repo: github/awesome-copilot
Popularidade
- Estrelas no GitHub
- 40 mil
- Posição no ranking
- #5238
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
acquire-codebase-knowledge
Ajuda seu agente a entender e documentar um projeto de código existente. É útil para novas pessoas entrarem no projeto ou para ter uma visão geral da arquitetura.
github/awesome-copilot
acreadiness-assess
Faz seu agente avaliar a prontidão de um projeto para IA e gerar um relatório. É útil para entender o quão bem um projeto está preparado para usar ferramentas de IA.
github/awesome-copilot
acreadiness-generate-instructions
Ajuda seu agente a criar instruções para ferramentas de IA baseadas em uma avaliação. É útil para melhorar a forma como a IA interage com o código e fecha lacunas identificadas.
github/awesome-copilot
acreadiness-policy
Faz seu agente ajudar a definir ou aplicar políticas para avaliação de projetos de IA. É útil para padronizar a forma como os projetos são avaliados e garantir conformidade.
github/awesome-copilot
Skills parecidas
api-connector-builder
Faz seu agente construir novas conexões com APIs seguindo o padrão já existente. Use quando precisar adicionar mais uma integração sem criar um novo jeito de fazer.
affaan-m/ECC
api-design
Ajuda seu agente a projetar APIs REST seguindo as melhores práticas. É útil para definir como as APIs se comunicam, como os erros são mostrados e como organizar os dados.
affaan-m/ECC
backend-patterns
Ajuda seu agente com padrões de arquitetura do lado do servidor e otimização de banco de dados. É útil para construir ou revisar o código que roda no servidor.
affaan-m/ECC