Hướng dẫn thiết kế bảng PostgreSQL
Skill tham chiếu giúp thiết kế schema, chọn kiểu dữ liệu, index và ràng buộc trong PostgreSQL theo thực hành tốt nhất.
Lập trìnhTrung cấp★ 1,814⑂ 104Điểm AI 9/10Cập nhật lần cuối: 26 thg 6, 2026
Làm được gì
- Áp đặt quy tắc chọn kiểu dữ liệu khi tạo/sửa bảng: TEXT thay cho VARCHAR(n), TIMESTAMPTZ thay TIMESTAMP, NUMERIC cho tiền,
BIGINT GENERATED ALWAYS AS IDENTITYthayserial. - Gợi ý chiến lược index (B-tree, GIN, GiST, BRIN, partial, expression, covering) và ràng buộc (PK, FK, UNIQUE NULLS NOT DISTINCT, CHECK, EXCLUDE).
- Cảnh báo các "bẫy" riêng của PostgreSQL: FK không tự động có index, khoảng trống trong sequence, dead tuple do MVCC, tên định danh bị hạ chữ thường.
- Đưa ra hướng tối ưu cho workload ghi nhiều / update nhiều / upsert, partition bảng lớn, tiến hóa schema an toàn, mẫu index JSONB và các extension (pg_trgm, pgvector, PostGIS, TimescaleDB).
Phù hợp với ai
- Lập trình viên backend, data engineer làm việc với PostgreSQL
- Nhóm cần chuẩn hóa migration/schema review
- Người xử lý dữ liệu time-series, log cần partition và index hiệu quả
Ví dụ sử dụng
- "Thiết kế bảng users và orders" → nhận DDL có IDENTITY PK, CHECK trạng thái, index cho cột FK.
- "Truy vấn JSONB chậm" → được tư vấn GIN
jsonb_path_opshay generated column + B-tree. - "Bảng log 100 triệu dòng nên làm gì?" → đề xuất PARTITION BY RANGE theo thời gian, index BRIN, chính sách lưu trữ.
· · · Hướng dẫn cài đặt · · ·
Dùng thử ngay, không cần cài
Dán đoạn dưới vào Claude là dùng được skill này mà không cần cài đặt.
Hãy đọc hướng dẫn trong tệp này và làm theo để giúp mình: https://raw.githubusercontent.com/timescale/pg-aiguide/HEAD/skills/design-postgres-tables/SKILL.md Mình muốn: (viết việc bạn cần ở đây)
Nếu Claude không mở được liên kết, hãy mở liên kết và copy nội dung vào rồi dán.
↓ Thấy hữu ích thì tải ZIP bên dưới và cài. Sau đó skill tự chạy, không phải dán lại mỗi lần.
Cài vào ứng dụng Claude (không cần terminal)
- Tải tệp ZIP bằng nút bên dưới.
- Trong Claude, mở Settings → Capabilities và bật 'Code execution and file creation'. (chỉ một lần)
- Vào Customize → Skills → + → 'Upload a skill' rồi tải tệp ZIP lên.
Cài vào Claude Code
Để Claude làm — dán câu dưới đây vào Claude Code
Hãy cài skill mình tìm thấy trên Claude Skill Mart. Copy thư mục skills/design-postgres-tables từ repo GitHub timescale/pg-aiguide vào ~/.claude/skills/design-postgres-tables/ của mình. Sau khi cài xong, cho mình biết skill này làm được gì trong một câu.
Cài bằng lệnh thủ công
git clone https://github.com/timescale/pg-aiguide.git /tmp/pg-aiguide && mkdir -p ~/.claude/skills && cp -r /tmp/pg-aiguide/skills/design-postgres-tables ~/.claude/skills/⚠ Đây là skill do người khác tạo. Hãy kiểm tra repo gốc trước khi cài.
- Mở terminal.
- Tạo thư mục skill:
mkdir -p ~/.claude/skills - Tải repo:
git clone https://github.com/timescale/pg-aiguide.git /tmp/pg-aiguide - Copy skill:
cp -r /tmp/pg-aiguide/skills/design-postgres-tables ~/.claude/skills/ - Khởi động lại Claude Code, rồi yêu cầu ví dụ "thiết kế bảng PostgreSQL cho hệ thống đơn hàng".
- (Tuỳ chọn) Nếu chỉ dùng cho một project, copy vào
.claude/skills/trong project đó.
Xem mã nguồn trên GitHub ↗Giấy phép: Apache-2.0