database
Database Assistant | 資料庫助手
Guide database design, migration planning, and query optimization.
引導資料庫設計、遷移規劃和查詢最佳化。
Core Principles | 核心原則
| Principle | Description | 說明 |
|---|---|---|
| Normalization | Eliminate redundancy (3NF minimum) | 消除冗餘(至少 3NF) |
| Referential Integrity | Enforce FK constraints | 強制外鍵約束 |
| Index Strategy | Index query patterns, not all columns | 依查詢模式建立索引 |
| Migration Safety | Always reversible, zero-downtime | 可逆、零停機 |
| Data Protection | Encrypt sensitive fields, audit access | 加密敏感欄位、稽核存取 |
Schema Design Checklist | Schema 設計檢查清單
- Primary keys defined (prefer UUID or BIGINT) | 主鍵已定義
- Foreign keys with proper ON DELETE/UPDATE | 外鍵含適當的級聯策略
- NOT NULL constraints on required fields | 必填欄位加 NOT NULL
- Indexes on frequently queried columns | 常查詢欄位建立索引
- Created/Updated timestamps on all tables | 所有表加建立/更新時間戳
- Sensitive data encrypted at rest | 敏感資料靜態加密
- Naming conventions consistent (snake_case) | 命名慣例一致(snake_case)
Normalization Quick Reference | 正規化快速參考
| Normal Form | Rule | 規則 |
|---|---|---|
| 1NF | Atomic values, no repeating groups | 原子值、無重複群組 |
| 2NF | 1NF + no partial dependencies | 1NF + 無部分相依 |
| 3NF | 2NF + no transitive dependencies | 2NF + 無遞移相依 |
| Denormalize | Only for proven read performance needs | 僅針對已證實的讀取效能需求 |
Migration Workflow | 遷移工作流程
PLAN ──► WRITE ──► TEST ──► DEPLOY ──► VERIFY
1. Plan — Assess Impact | 評估影響
Identify affected tables, estimate data volume, plan rollback strategy.
識別受影響的表、估算資料量、規劃回滾策略。
2. Write — Create Migration | 撰寫遷移
Write forward and rollback scripts. Use incremental, numbered migrations.
撰寫正向和回滾腳本。使用遞增編號的遷移。
3. Test — Validate Migration | 驗證遷移
Run on staging with production-like data. Verify data integrity post-migration.
在 staging 環境使用類生產資料執行。驗證遷移後資料完整性。
4. Deploy — Execute Migration | 執行遷移
Apply during maintenance window or use online schema change tools.
在維護窗口執行,或使用線上 Schema 變更工具。
5. Verify — Confirm Success | 確認成功
Check row counts, constraint validity, application functionality.
檢查列數、約束有效性、應用程式功能。
Index Strategy | 索引策略
| Type | Use Case | 使用場景 |
|---|---|---|
| B-tree | Equality, range queries (default) | 等值、範圍查詢(預設) |
| Hash | Exact match only | 僅精確匹配 |
| GIN | Full-text search, JSONB | 全文搜尋、JSONB |
| Partial | Filtered subsets | 過濾子集 |
| Composite | Multi-column queries | 多欄位查詢 |
Usage | 使用方式
/database - Interactive database design guide | 互動式資料庫設計引導
/database schema - Review schema design | 審查 Schema 設計
/database --migration - Migration planning assistant | 遷移規劃助手
Next Steps Guidance | 下一步引導
After /database completes, the AI assistant should suggest:
資料庫設計完成。建議下一步 / Database design complete. Suggested next steps:
- 執行
/security檢查資料保護措施 — Check data protection measures- 執行
/testing規劃資料庫測試策略 ⭐ Recommended / 推薦 — Plan database testing strategy- 執行
/checkin確認遷移符合提交規範 — Verify migrations meet check-in standards- 產生 API 端點 → 執行
/api-design— Generate API endpoints → Run/api-design
Reference | 參考
- Core standard: database-standards.md
Version History | 版本歷史
| Version | Date | Changes | 變更說明 |
|---|---|---|---|
| 1.0.0 | 2026-03-23 | Initial release | 初始版本 |
License | 授權
CC BY 4.0 — Documentation content
More from asiaostrich/universal-dev-standards
bdd
[UDS] Guide through Behavior-Driven Development workflow
23atdd
[UDS] Guide through Acceptance Test-Driven Development workflow
22methodology
[UDS] Manage development methodology workflow
20reverse
[UDS] System archeology — reverse engineer code across Logic, Data, and Runtime dimensions
19docgen
[UDS] Generate usage documentation from project sources
19sdd
[UDS] Create or review specification documents for Spec-Driven Development
18