agentsclimarketplace

Oracle plsql ptbr

Skill Maxwbh/oracle-skills-ptbr/skills/oracle-plsql-ptbr

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/.From its SKILL.md

Install
npx -y skills add Maxwbh/oracle-skills-ptbr --skill oracle-plsql-ptbr

Assembled 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.

SKILL.md

5.6 KB, ~1.1k tokens by cl100k_base, 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

ÁreaReferenceAssets
EBR (zero downtime)references/ebr-editioning-views.md(conceitual)
PL/SQLreferences/ → oracle-trivadis-ptbrpackage_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-ptbr quando 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

  1. 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.
  2. Bind variables sempre. Em EXECUTE IMMEDIATE use USING. Identificadores dinâmicos → DBMS_ASSERT.simple_sql_name.
  3. Bulk em loops. BULK COLLECT + FORALL. Com LIMIT para volumes > 100k. DBMS_ERRLOG quando cabe DML único.
  4. Exception com contexto. lc_nome_unidade CONSTANT VARCHAR2(60) em toda procedure pública. Re-raise via raise_application_error.
  5. ROLLBACK explícito antes do re-raise em handlers com DML. Caller decide o commit.
  6. Logger em vez de DBMS_OUTPUT em produção.
  7. Privilégios mínimos. Schema owner faz DDL; app user faz DML.
  8. Auditabilidade. criado_em, criado_por, atualizado_em, atualizado_por em tabelas de domínio.
  9. NOCOPY para LOB/collection grande em IN OUT/OUT.
  10. Triggers não contêm regra de negócio. Auditoria, surrogate key, cross-edition EBR.
  11. Sempre compound trigger quando trigger é necessário.
  12. 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 deSkill
Naming, prefixos, checklist Trivadisoracle-trivadis-ptbr
APEX page process, dynamic action, IGoracle-apex-ptbr
ORDS handler, módulo RESToracle-ords-ptbr
Sessão, lock, flashback, tablespaceoracle-dba-ptbr
Explain plan, AWR, index, tuningoracle-tuning-ptbr

What ships with it: 10 files

90.6 KB alongside SKILL.md

references/

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.