← ClaudeAtlas

dbanalyzelisted

Analyze a database schema by running SchemaCrawler lint and extracting the full schema via information_schema. Use this skill whenever the user wants to audit a database schema, check normalization, detect missing indexes, redundant indexes, nullable FK columns, inconsistent data types, design smells, or get improvement recommendations.
SoluDevTech/ai-driven · ★ 3 · AI & Automation · score 57
Install: claude install-skill SoluDevTech/ai-driven
# DB Analyze — Lint & Schema Analysis ## What this skill does Combines SchemaCrawler lint (structural issues) with a full schema extraction via `information_schema` (normalization, design analysis). Produces a prioritized action plan covering both technical and design issues. --- ## Prerequisites SchemaCrawler wrapper at `/usr/local/bin/schemacrawler`: ``` JAVA_HOME=/opt/homebrew/opt/openjdk@21/libexec/openjdk.jdk/Contents/Home /usr/local/opt/schemacrawler-17.1.4-bin/bin/schemacrawler.sh ``` psql must be available for the smart query. --- ## Workflow ### Step 1 — Run SchemaCrawler lint → Load `references/schemacrawler-config.md` for the lint command, supported servers, and per-project connection conventions. ### Step 2 — Extract full schema (smart query) → Load `references/schema-queries.md` for the `information_schema` smart query that extracts tables, columns, constraints, FKs, and indexes in one pass. ### Step 3 — SchemaCrawler linter reference → Load `references/schemacrawler-config.md` for the full linter table (description + severity for every built-in linter). ### Step 4 — Noise filter **Always ignore** | Lint | Reason | |------|--------| | `LinterTableWithNoRemarks` (low) | Not urgent in dev | | `LinterTableEmpty` (low) | Expected on fresh dev databases | | `LinterTableWithNoSurrogatePrimaryKey` (low) | Composite PKs valid on junction tables | | `LinterTableWithPrimaryKeyNotFirst` (low) | Convention only, no functional impact | **Always escalate** | Li