PostgreSQL Schema
在本节中,我们将学习PostgreSQL Schema,公共 Schema,PostgreSQL 如何使用 schema 搜索路径解析 Schema 中的对象,PostgreSQL schema 和权限,以及使用 PostgreSQL Schema 的优势。
PostgreSQL Schema模式介绍
每个数据库都以一个Schema模式开始,它应该是公共模式。模式是表的命名集合。
Schema 是一个命名空间,它提供了几个对象,例如
- 观点
- 索引
- 序列
- 数据类型
- 运营商
- 职能
- 表
- 其他关系。
在PostgreSQL schema中,我们可以使用模式名称固定名称作为前缀,以便在以下语句的帮助下访问模式的对象:
schema_name.object_name
否则,我们可以设置一个包含schema的搜索路径,以后也可以覆盖schema搜索路径。
一个数据库可以有一个或多个模式,而每个模式只存在于一个数据库中,两个模式可以包含不同的对象,它们共享相似的名称。
例如
假设我们有包含Employee 表的Company 模式,而公共模式也有Employee 表。当我们引用Employee表时,应该是这样的:
public.comany
或者
Employee.company
为什么我们需要在 PostgreSQL 中使用 Schemas?
在PostgreSQL中,我们使用模式的主要原因如下:
- 最终用户只能使用那些允许将测试表和逻辑与生产表分开的模式。
- 在模式中,我们可以高效地实现数据并可以应用于以下一些活动:
- 我们可以快速恢复以不同模式存在的数据。因此,面向应用程序的模式可以单独返回和备份以用于恢复和时间旅行。
- 当应用程序数据在模式中时,我们可以管理应用程序更改。因此,新版本的应用程序可以在新模式中的表结构上工作,包括对模式名称的简单修改。
- 我们可以轻松地备份存在于单独模式中的数据。因此,不稳定的数据可以有多个来自非易失性数据的备份计划。
因此,出于创建目的,我们可以在模式高级管理中将应用程序数据分开。为了最终用户的目的,我们可以通过相互踩踏来让我们的用户处于不同的模式中。
热门文章
优秀文章