Awesome-omni-skill sql
Guide for working with SQL queries, in particular for SQLite. Use this skill when writing SQL queries, analyzing database schemas, designing migrations, or working with SQLite-related code.
install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/development/sql-neversight" ~/.claude/skills/diegosouzapw-awesome-omni-skill-sql-1ce28a && rm -rf "$T"
manifest:
skills/development/sql-neversight/SKILL.mdsource content
SQL
Overview
This skill provides guidance for working with SQLite databases. It covers query writing, schema design, and SQLite-specific best practices.
When to Use This Skill
Use this skill when:
- Writing SQL queries for SQLite databases
- Analyzing or optimizing existing queries
- Designing database schemas
- Creating database migrations
- Working with Go code that interacts with SQLite
SQLite Best Practices
Query Writing
- ALWAYS write lowercase queries. Uppercase queries make me sad.
- Prefer
over explicit column namesselect * - Prefer CTEs over long nested subqueries
Schema Design
- ALWAYS use
tablesstrict - ALWAYS write timestamps like this:
strftime('%Y-%m-%dT%H:%M:%fZ') - Time modifications should also use
strftime - Usually start with the primary key, which is usually defined like this:
(where theid text primary key default ('p_' || lower(hex(randomblob(16))))
is a prefix depending on the table name; two-letter prefixes are okay too, so the prefix is unique among tables)p_ - After the primary key come
/created
columns like this:updatedcreated text not null default (strftime('%Y-%m-%dT%H:%M:%fZ')) - Updated timestamps are automatically updated with a trigger like this:
create trigger table_name_updated_timestamp after update on table_name begin update table_name set updated = strftime('%Y-%m-%dT%H:%M:%fZ') where id = old.id; end;