← スキル一覧に戻る

database-schema-design
by MUmerRazzaq
⭐ 0🍴 0📅 2025年12月25日
SKILL.md
name: database-schema-design description: A guide for relational database schema design best practices. Use this skill when a user wants to design a new database schema, understand best practices, create an ERD, write DDL scripts, or develop an indexing or schema evolution strategy.
Relational Database Schema Design
This skill provides a structured workflow for designing robust and scalable relational database schemas.
Schema Design Workflow
Follow these steps to design a database schema. For detailed principles and best practices for each step, consult the Design Principles Guide.
- Identify Entities & Attributes: Analyze requirements to find the core nouns (entities) and their properties (attributes).
- Determine Relationships: Define how entities relate to each other (one-to-one, one-to-many, many-to-many).
- Create an ERD with Mermaid: Visualize the schema with an Entity-Relationship Diagram.
- Define Constraints: Specify rules to ensure data integrity (primary keys, foreign keys, unique, check).
- Generate DDL Scripts: Write the SQL code to create the schema.
- Develop Indexing Strategy: Plan indexes to optimize query performance.
- Consider Denormalization: Decide if and where to denormalize for performance reasons.
- Plan for Schema Evolution: Establish a strategy for managing future schema changes.
ERD Creation Guide with Mermaid
Use Mermaid syntax to create an ERD. This provides a clear, version-controllable diagram of the schema.
Example: A simple blog schema.
erDiagram
USER {
int id PK "User ID"
string name "User's full name"
string email "Unique email"
}
POST {
int id PK "Post ID"
string title "Post title"
string content "Post body"
int user_id FK "Author of the post"
}
USER ||--|{ POST : "writes"
Cardinality Syntax:
|o--||: One-to-one|o--|{: One-to-many}o--|{: Many-to-many
Additional Resources
- Core Design Principles: Detailed guide on entities, relationships, attributes, constraints, and denormalization.
- SQL DDL Templates: Reusable SQL templates for creating tables, constraints, and other schema objects.
- Indexing Checklist: A checklist to guide your indexing strategy for optimal performance.
- Schema Evolution Strategy: A document on how to manage changes to your database schema over time.
スコア
総合スコア
50/100
リポジトリの品質指標に基づく評価
✓SKILL.md
SKILL.mdファイルが含まれている
+20
○LICENSE
ライセンスが設定されている
0/10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
○タグ
1つ以上のタグが設定されている
0/5
レビュー
💬
レビュー機能は近日公開予定です