Skills Plugins MCP Prompt Model 博客 我的中心

database-design

数据库设计规范与优化指南

DeepseekModel キュレーション済みスキル 品質 優秀 · 78 v1.0.0

取得

https://deepseekmodel.com/api/download.php?id=leavesfly-jimi-src-main-resources-skills-database-design-skill-md&format=skill
ダウンロード .skill 標準形式。system_prompt と model_config を収録し、任意の Agent で利用可能
.skill ファイルの system_prompt フィールドの実際の内容。
name database-design description 数据库设计规范与优化指南 version 1.0.0 category development triggers ["database design","数据库设计","SQL 优化","表设计","数据库规范"] scriptPath check-db.sh scriptType bash autoExecute true scriptTimeout 10 数据库设计规范技能包 设计高效、可维护的数据库结构。 表设计原则 1. 命名规范 表名 : 小写字母 + 下划线 使用复数形式 示例: users , order_items , user_profiles 字段名 : 小写字母 + 下划线 见名知意 示例: created_at , user_id , email_address 索引名 : -- 主键:pk_表名 PRIMARY KEY pk_users -- 唯一索引:uk_表名_字段名 UNIQUE INDEX uk_users_email -- 普通索引:idx_表名_字段名 INDEX idx_users_created_at -- 外键:fk_表名_关联表名 FOREIGN KEY fk_orders_users 2. 字段类型选择 数据类型 使用场景 示例 INT/BIGINT ID、数量、年龄 user_id BIGINT VARCHAR 变长字符串 name VARCHAR(100) CHAR 定长字符串 country_code CHAR(2) TEXT 长文本 description TEXT DECIMAL 金额、精确数值 price DECIMAL(10,2) DATETIME 日期时间 created_at DATETIME ENUM 固定选项 status ENUM('active','inactive') BOOLEAN 布尔值 is_deleted BOOLEAN 注意 : 避免使用 FLOAT/DOUBLE 存储金额 VARCHAR 长度设置合理(避免过大) 时间字段统一使用 DATETIME 或 TIMESTAMP 3. 主键设计 推荐 : -- 自增ID(适合单机) id BIGINT AUTO_INCREMENT PRIMARY KEY -- 雪花ID(适合分布式) id BIGINT PRIMARY KEY COMMENT '雪花ID' -- UUID(分布式场景) id CHAR ( 36 ) PRIMARY KEY COMMENT 'UUID' 避免 : 业务字段作为主键(如手机号、邮箱) 联合主键(复杂度高) 4. 外键约束 使用外键的优势 : 数据完整性保证 级联操作 不使用外键的场景 : 高并发系统(性能考虑) 分库分表场景 微服务架构 -- 外键示例 FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE ON UPDATE CASCADE 索引设计 1. 索引类型 主键索引 : PRIMARY KEY (id) 唯一索引 : UNIQUE INDEX uk_users_email (email) 普通索引 : INDEX idx_users_created_at (created_at) 联合索引 (遵循最左前缀原则): INDEX idx_users_name_age (name, age) -- 可以走索引: WHERE name = 'xxx' -- 可以走索引: WHERE name = 'xxx' AND age = 25 -- 不走索引: WHERE age = 25 全文索引 : FULLTEXT INDEX ft_articles_content (content) 2. 索引优化原则 何时创建索引 : ✓ WHERE 子句常用字段 ✓ ORDER BY 字段 ✓ JOIN 关联字段 ✓ 查询频率高的字段 何时避免索引 : ✗ 数据重复度高的字段(如性别) ✗ 频繁更新的字段 ✗ 小表(全表扫描更快) 索引失效场景 : -- ❌ 在索引列上使用函数 WHERE YEAR (created_at) = 2025 -- ✓ 改为 WHERE created_at >= '2025-01-01' AND created_at < '2026-01-01' -- ❌ 模糊查询前导模糊 WHERE name LIKE '%张%' -- ✓ 改为 WHERE name LIKE '张%' -- ❌ 类型转换 WHERE user_id = '123' -- user_id 是 INT -- ✓ 改为 WHERE user_id = 123 SQL 优化 1. 查询优化 **避免 SELECT ***: -- ❌ 不推荐 SELECT * FROM users; -- ✓ 推荐 SELECT id, name, email FROM users; 使用 LIMIT : SELECT id, name FROM users LIMIT 100 ; 避免 N+1 查询 : -- ❌ N+1 问题 SELECT * FROM orders; -- 查询 N 个订单 -- 然后循环查询每个订单的用户 SELECT * FROM users WHERE id = ?; -- ✓ 使用 JOIN SELECT o. * , u.name FROM orders o JOIN users u ON o.user_id = u.id; 2. 分页优化 传统分页 (大偏移量性能差): SELECT * FROM users LIMIT 100000 , 20 ; 优化方案(使用 ID 范围) : SELECT * FROM users WHERE id > 100000 ORDER BY id LIMIT 20 ; 使用覆盖索引 : SELECT id, name FROM users WHERE status = 'active' ORDER BY created_at LIMIT 20 ; 3. COUNT 优化 避免 COUNT(*) : -- ❌ 慢 SELECT COUNT ( * ) FROM users WHERE status = 'active' ; -- ✓ 使用近似值(如缓存) -- 或者定期统计存到另一个表 范式设计 第一范式(1NF) 每个字段都是不可分割的原子值 第二范式(2NF) 消除部分依赖(非主键字段完全依赖主键) 第三范式(3NF) 消除传递依赖(非主键字段不依赖其他非主键字段) 反范式化 为了性能适当冗余数据: -- 订单表冗余用户名(避免频繁JOIN) CREATE TABLE orders ( id BIGINT PRIMARY KEY , user_id BIGINT , user_name VARCHAR ( 100 ), -- 冗余字段 total_amount DECIMAL ( 10 , 2 ) ); 常用字段 标准字段 id BIGINT AUTO_INCREMENT PRIMARY KEY , created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP , updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP , is_deleted BOOLEAN DEFAULT FALSE , created_by BIGINT , updated_by BIGINT 乐观锁 version INT NOT NULL DEFAULT 0 软删除 deleted_at DATETIME NULL , is_deleted BOOLEAN DEFAULT FALSE 分库分表 垂直拆分 按业务模块拆分表 水平拆分 -- 按 user_id 取模 user_0, user_1, user_2, ... -- 按时间分表 order_202501, order_202502, ... 最佳实践 必须字段 :id, created_at, updated_at 统一字符集 :utf8mb4 统一时区 :UTC 避免 NULL :尽量使用 NOT NULL + DEFAULT 合理使用注释 :COMMENT '字段说明' 定期备份 :自动化备份机制 监控慢查询 :开启 slow_query_log
このスキルを起動するキーワード。クリックでコピーできます。

このスキルにはトリガーワードがありません。

ダウンロードした .skill に含まれるフィールド。
フィールド 説明
formatフォーマット識別子(skill/v1)
skill_idスキル固有 ID
nameスキル名
versionバージョン
description説明
categoryカテゴリ(配列)
trigger_wordsトリガーワード
tagsタグ
sourceソース
source_urlソース URL(本ページ)
exported_atエクスポート日時(ダウンロード毎)
system_promptシステムプロンプト本文
model_configモデル設定:provider / model / temperature / max_tokens / top_p
examplesサンプル
install_guide各プラットフォームの導入説明(Coze / Dify / Claude / カスタム)
同じスキルを各プラットフォーム形式で出力できます。
.skill 標準形式。system_prompt と model_config を収録し、任意の Agent で利用可能 ダウンロード
.skillpro 拡張形式。scripts / tools / dependencies / hooks を含む ダウンロード
.json 純粋な JSON 出力。system_prompt とモデル設定のみ ダウンロード
Coze frontmatter 付き Markdown。Coze へのインポート用 ダウンロード
Dify Dify DSL。アプリ作成後にそのままインポート ダウンロード

每日精选 Skill 推荐,免费送到你邮箱

输入邮箱,每天接收一个精选 AI Agent 技能推荐。完全免费,持续更新。

验证码 --

提交后我们会发送一封确认邮件,点击邮件里的链接才会开始收信。

完全免费,取消任意时间。我们不会发送垃圾邮件。