Oracle plsql ptbr
Skill PT-BR para Claude com padrões Trivadis 4.4 — desenvolvimento Oracle (PL/SQL, APEX, ORDS, DBA, Tuning, Trivadis, DevOps)
npx -y skills add Maxwbh/oracle-skills-ptbr --skill oracle-plsql-ptbrAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
PL/SQL Oracle 19c — packages, procedures, functions, types, cursores, LOBs e EBR. ATIVE em BULK COLLECT, FORALL, NOCOPY, EXECUTE IMMEDIATE, MERGE INTO, compound trigger, editioning view, cross-edition trigger, CLOB/BLOB, Logger, exception handler, DML alternatives. Frases ambíguas com contexto PL/SQL — "criar package", "refatorar procedure", "processar LOB", "zero downtime deploy", "loop tá lento", "trigger de auditoria". NAO ATIVE em páginas APEX, endpoints ORDS, DBA operacional (sessões/locks/tablespace), tuning de queries (explain plan/AWR/ASH). Aplica naming Trivadis automaticamente — para revisão explícita do padrão use oracle-trivadis-ptbr. Templates em assets/.
SKILL.md
5.6 KB, as published. Nobody here has run it
oracle-plsql-ptbr — v2.0.0
PL/SQL Oracle 19c seguindo Trivadis Guidelines 4.4. Foco em código correto, seguro e performático.
Desenvolvido por: Maxwell da Silva Oliveira — M&S do Brasil LTDA
Áreas cobertas
| Área | Reference | Assets |
|---|---|---|
| EBR (zero downtime) | references/ebr-editioning-views.md | (conceitual) |
| PL/SQL | references/ → oracle-trivadis-ptbr | package_header.sql, package_body.sql, exception_template.sql, bulk_processing_template.sql, dml_alternatives_to_plsql.sql, nocopy_for_lobs.sql, clob_blob_operations.sql, logger_integration.sql, triggers_canonicos.sql |
Referência cruzada de nomenclatura: padrão Trivadis 4.4 completo (prefixos, estrutura, naming PT-BR) está em oracle-trivadis-ptbr. Esta skill aplica as convenções automaticamente — carregue
oracle-trivadis-ptbrquando o foco for revisão explícita de padrão.
Quando ativar
- Criação ou refatoração de packages, procedures, functions, types
- BULK COLLECT + FORALL (loop PL/SQL em volume)
- NOCOPY para BLOB/CLOB > 100KB ou collections grandes em IN OUT
- EXECUTE IMMEDIATE com bind variables (SQL dinâmico)
- MERGE INTO como substituto de loop SELECT/INSERT/UPDATE
- LOBs: leitura em chunks, Base64, SHA-256, DBMS_LOB
- Compound trigger (auditoria, surrogate keys, cross-edition)
- EBR: editioning views, cross-edition triggers, deploy zero downtime
- Logger (OraOpenSource): log_error, log_warn, log_info, log_permanent
- Qualquer menção a AUTONOMOUS_TRANSACTION, PRAGMA, DBMS_ERRLOG
Não usar para: APEX pages/regions/items, ORDS endpoints/modules, DBA ops (sessão/lock/tablespace), tuning de queries.
Princípios canônicos
- SQL puro antes de PL/SQL. Se MERGE, INSERT SELECT ou UPDATE com CASE resolve — use. PL/SQL só quando há lógica de negócio por linha, chamadas externas ou coordenação complexa.
- Bind variables sempre. Em EXECUTE IMMEDIATE use
USING. Identificadores dinâmicos →DBMS_ASSERT.simple_sql_name. - Bulk em loops.
BULK COLLECT+FORALL. ComLIMITpara volumes > 100k.DBMS_ERRLOGquando cabe DML único. - Exception com contexto.
lc_nome_unidade CONSTANT VARCHAR2(60)em toda procedure pública. Re-raise viaraise_application_error. - ROLLBACK explícito antes do re-raise em handlers com DML. Caller decide o commit.
- Logger em vez de DBMS_OUTPUT em produção.
- Privilégios mínimos. Schema owner faz DDL; app user faz DML.
- Auditabilidade.
criado_em,criado_por,atualizado_em,atualizado_porem tabelas de domínio. - NOCOPY para LOB/collection grande em IN OUT/OUT.
- Triggers não contêm regra de negócio. Auditoria, surrogate key, cross-edition EBR.
- Sempre compound trigger quando trigger é necessário.
- EBR para zero downtime. Editioning views + editions + cross-edition triggers.
Fluxo de uso
Criar código: SQL puro resolve? → dml_alternatives_to_plsql.sql. Não → clone template da área → adapte naming Trivadis → use Logger.
Revisar código: Princípio #0 primeiro. Depois antipatterns: concatenação em SQL dinâmico, loop linha-a-linha, WHEN OTHERS THEN NULL, DBMS_OUTPUT em produção, falta NOCOPY em LOB IN OUT. Para naming explícito → oracle-trivadis-ptbr.
Referências cruzadas
| Precisa de | Skill |
|---|---|
| Naming, prefixos, checklist Trivadis | oracle-trivadis-ptbr |
| APEX page process, dynamic action, IG | oracle-apex-ptbr |
| ORDS handler, módulo REST | oracle-ords-ptbr |
| Sessão, lock, flashback, tablespace | oracle-dba-ptbr |
| Explain plan, AWR, index, tuning | oracle-tuning-ptbr |