Skip to content
Development
Skill

/704-technologies-sql

Use when you need framework-agnostic SQL guidance — schema naming, relational table design, query readability, indexes, transactions, database security, migrations, testing, and monitoring — without choosing Spring Boot, Quarkus, or Micronaut. This should trigger for requests

From plugin
jabrena-plinth
457124 skills

Claude Code

$ npx -y skills add jabrena/plinth --skill 704-technologies-sql --agent claude-code

SKILL.md

704-technologies-sql.SKILL.md
name: 704-technologies-sql
description: Use when you need framework-agnostic SQL guidance — schema naming, relational table design, query readability, indexes, transactions, database security, migrations, testing, and monitoring — without choosing Spring Boot, Quarkus, or Micronaut. This should trigger for requests such as Review SQL schema or migrations; Improve SQL query performance and readability; Design relational tables and indexes; Review database transaction, security, or monitoring practices. Part of Plinth Toolkit
license: Apache-2.0
metadata:
  author: Juan Antonio Breña Moral
  version: 0.19.0

SQL best practices

Help teams create maintainable, secure, and performant **SQL** for Java applications across relational database engines.

**What is covered in this Skill?**

  • Naming conventions for tables, columns, indexes, constraints, views, triggers, and routines
  • Relational table design: keys, constraints, timestamps, soft deletes, normalization, and dialect-aware data types
  • Query writing: readable formatting, explicit column lists, joins, CTEs, bind parameters, and execution-plan review
  • Index strategy: foreign keys, filter/sort paths, composite indexes, over-indexing risks, and index lifecycle
  • Security, transactions, migrations, testing, and monitoring practices for production database work

**Scope:** Framework-agnostic SQL quality. For Java data-access APIs, defer to the matching JDBC, Spring Data JDBC, Panache, or Micronaut Data skill.

Constraints

Keep recommendations at the SQL and database-design layer unless the user explicitly asks for Java framework integration. After editing this repository's XML sources, regenerate skills and verify the build.

  • **MANDATORY**: Run `./mvnw compile` or `mvn compile` before proposing Java or Maven changes in the same change set
  • **SQL INJECTION**: Never concatenate untrusted input into SQL strings; use bind parameters through the application's data-access API
  • **DIALECTS**: Call out database-specific syntax and portability trade-offs when using PostgreSQL, MySQL, Oracle, SQL Server, H2, or another engine
  • **FRAMEWORK**: Defer Spring JDBC to `@311-frameworks-spring-jdbc`, Quarkus JDBC to `@411-frameworks-quarkus-jdbc`, Micronaut JDBC to `@511-frameworks-micronaut-jdbc`, and framework-specific migrations to the matching Flyway skill
  • **VERIFY**: Run `./mvnw clean verify` or `mvn clean verify` before promoting changes
  • **EDGE CASE**: If the target database dialect, migration tool, or production constraint is missing and affects the recommendation, ask a clarifying question before editing SQL
  • **EDGE CASE**: If requested changes conflict with data safety, backwards compatibility, or zero-downtime deployment constraints, explain the trade-off and ask for confirmation

When to use this skill

  • Review SQL schema or migrations
  • Improve SQL query performance and readability
  • Design relational tables and indexes
  • Review database transaction, security, or monitoring practices
  • Apply SQL best practices to database DDL or DML

Workflow

1. **Read reference and assess database context**

Read `references/704-technologies-sql.md` and inspect current schema, migrations, SQL queries, tests, and database configuration before proposing changes.

2. **Identify dialect and operational constraints**

Confirm the target database engine, migration tool, data volume expectations, availability requirements, and compatibility constraints that shape the SQL design.

3. **Apply SQL-aligned changes**

Implement or refactor SQL artifacts following the reference patterns and project conventions, keeping Java framework integration out of scope unless explicitly requested.

4. **Run verification and report results**

Execute appropriate build, migration, SQL validation, and test checks; summarize what changed, what was verified, and any remaining database risks.

Reference

For detailed guidance, examples, and constraints, see [references/704-technologies-sql.md](references/704-technologies-sql.md).

Read more
@jabrena
Ships withjabrena-plinth

Languages: Español · 中文 Help this project grow: Become a sponsor

Stars on GitHub

Momentum

stars in total
457
Star history of jabrena/plinth on GitHub, a chart by star-history.com

Other skills on jabrena-plinth.

012-agile-epic

012-agile-epic

Guides the creation of agile epics with comprehensive definition including business value, success criteria, and breakdown into…

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills10d309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc11d293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react1d252k
@facebook@facebookInstall Skill

Questions about 704-technologies-sql.

Which coding agents can use 704-technologies-sql?
704-technologies-sql installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.