返回技能库
开发 / 数据库精选

PostgreSQL 表结构设计

面向 PostgreSQL 的表结构设计与评审,覆盖类型、约束、索引、分区、JSONB 和在线变更。

查看安装方式

技能说明

适用于 PostgreSQL 新表设计、上线前数据库评审、查询性能检查和线上 schema 演进规划。边界:主要针对 PostgreSQL,不会直接执行线上 DDL;版本差异、真实查询计划和生产风险仍需人工核验。

关于此技能

面向 PostgreSQL 的表结构设计与评审,覆盖数据类型、主外键、约束、索引、分区、JSONB 和在线变更等关键决策。

核心能力

类型与约束选择

从主键、外键、唯一、检查约束和 NULL 语义出发,选择适合 PostgreSQL 的数据类型与一致性规则。

索引与查询性能

按真实访问路径设计 B-tree、复合、部分、表达式、GIN、GiST 和 BRIN 索引,并识别外键未自动建索引等陷阱。

大表与演进规划

根据数据规模和访问模式判断是否分区,覆盖 JSONB、扩展、MVCC 以及尽量减少停机的 schema 变更思路。

适用场景

新建 PostgreSQL 表

在写 DDL 前确定主键、字段类型、默认值、约束、外键索引和时间字段。

上线前数据库评审

检查冗余、空值语义、查询路径、索引覆盖、分区条件和 PostgreSQL 版本差异。

线上表结构演进

为大表分区、JSONB 查询、扩展启用和不停机迁移整理风险、顺序与验证点。

使用步骤

  1. 01

    第一步:明确业务与访问模式

    列出实体关系、读写比例、过滤排序字段、数据规模、增长速度和可接受的变更窗口。

  2. 02

    第二步:确定类型与约束

    优先选择语义正确的数据类型,补齐主键、外键、唯一、检查约束和必要的默认值。

  3. 03

    第三步:按真实查询复核

    只为实际访问路径建索引,评估分区和 JSONB 策略,并在上线前安排 explain、回滚和版本检查。

常见问题

它适用于 MySQL 或其他数据库吗?+

主要适用于 PostgreSQL。其他数据库只能借鉴一般建模思路,类型、约束、索引和分区行为不能直接照搬。

它会直接修改线上数据库吗?+

不会。它提供设计、评审和变更规划,不会替你执行 DDL;线上操作仍需备份、灰度、回滚和人工审批。

什么时候应该做表分区?+

不能只看表大不大。应同时确认查询持续按分区键过滤,且分区能帮助维护或裁剪扫描;还要考虑唯一约束、外键和版本限制。

安装前检查

把兼容性、来源和安装入口先看清楚,再放进自己的工作流。

信息卡
兼容平台

Codex · Claude Code · Cursor

来源状态

已提供来源链接

安装方式

命令可直接复制

最近整理

2026/09/04

安装提醒:即使有清晰的来源和安装方式,也建议先阅读 SKILL.md,确认它会访问哪些文件和服务。

安装命令
npx skills add wshobson/agents --skill postgresql-table-design -a claude-code -g

适用平台与标签

CodexClaude CodeCursorGitHub CopilotOpenCode兼容 Agent Skills#PostgreSQL#数据库设计#表结构#索引#性能