九月 24, 2023
摘要:在本教程中,您将熟悉 PostgreSQL 提供的最常见的服务器和数据库对象。了解这些对象及其功能非常重要,这样您就不会错过您可能希望在系统中拥有的炫酷功能。
目录
安装 PostgreSQL、加载示例数据库并使用 pgAdmin GUI 应用程序连接到数据库服务器后,您将看到 PostgreSQL 提供了许多服务器和数据库对象。为了有效地利用 PostgreSQL 提供的每个对象的功能,您应该很好地理解每个对象是什么以及如何有效地使用它。
让我们熟悉一下这些 PostgreSQL 服务器和数据库对象。
服务器服务
当您安装 PostgreSQL 实例时,您将拥有相应的 PostgreSQL 服务器服务。PostgreSQL 服务器服务也称为 PostgreSQL 服务器。您可以在一台物理服务器上安装多个 PostgreSQL 服务器,使用不同的端口,并使用不同的位置来存储数据。
数据库
数据库是其他对象(例如表、视图、函数和索引)的容器。您可以在 PostgreSQL 服务器内创建任意数量的数据库。
表
表存储数据。一张表属于一个数据库,每个数据库又包含多个表。
PostgreSQL 有一个特殊功能叫表继承,这意味着一个表(子表)可以从另一个表(父表)继承,因此当您从子表中查询数据时,父表中的数据也会显示出来。
模式
模式是数据库中表和其他对象的逻辑层容器。每个 PostgreSQL 数据库可能有多个模式。
表空间
表空间是 PostgreSQL 物理层存储数据的地方。表空间允许您使用简单的命令,轻松地将数据跨磁盘移动到不同的物理位置。
默认情况下,PostgreSQL 为您提供两个表空间:
pg_default
用于存储用户数据。pg_global
用于存储系统数据。
下图是默认的表空间:
视图
视图是存储在数据库中的命名查询。除了只读视图之外,PostgreSQL 还支持可更新视图。
函数
函数是可重用的 SQL 代码块,它返回多组行的标量值。
运算符
运算符是符号函数。PostgreSQL 允许您自定义运算符。
转换
转换对象使您能够将一种数据类型转换为另一种数据类型。由函数支持的转换对象来执行转换。您还可以创建自己的转换对象来覆盖 PostgreSQL 提供的默认转换。
序列
序列用于管理表中定义为 serial 列或标识列的自动增量列。
扩展
PostgreSQL 从 9.1 版本开始引入了扩展概念,将其他对象(包括类型、强制转换、索引、函数等)包装到一个单元中。扩展的目的是为了更容易维护。
在本教程中,您学习了常见的 PostgreSQL 数据库和服务器对象。在开始下一个教程之前,只需花几分钟时间探索这些对象,即可获得它们的简要概述。