模式(Schema)

Schema 表示数据库中的逻辑结构或命名空间,在不同数据库产品里既可能指整体结构,也可能指 database 内部的分层容器。

#type / concept #status / growing #tech / dev / backend #resource / database #resource / sql

[!info] related notes

模式(Schema)

一句话定义

Schema 是数据库里用来描述结构或划分命名空间的一层逻辑组织。

核心机制 / 工作原理

Schema 这个词有两层常见含义:

  • 广义上,它可以指“一套数据结构定义”,例如表、列、类型和约束
  • 在 PostgreSQL 里,它还是 database 内部的命名空间,例如 public.userssales.orders

它的价值在于:

  • 给对象分层,避免同名冲突
  • 让权限、归属和组织边界更清晰
  • 让数据库结构不只是散落的表,而是一套可管理的结构体系

最小例子 / 最小场景

在 PostgreSQL 中:

CREATE SCHEMA sales;

CREATE TABLE sales.orders (
  id BIGINT PRIMARY KEY
);

这里 sales 是 schema,orders 是 schema 下面的一张表。

边界与易混淆点

  • 在 PostgreSQL 中,schema 和 database 不是一回事;schema 是 database 内部的一层命名空间。
  • 在 MySQL 的很多语境里,SCHEMADATABASE 常被近似等价使用。
  • schema 不只是“建表 SQL 文件”的别名,它表达的是结构边界。
创建于 2026/5/5 更新于 2026/5/27