PostgreSQL 教程: PostgreSQL 服务器和数据库对象

九月 24, 2023

摘要:在本教程中,您将熟悉 PostgreSQL 提供的最常见的服务器和数据库对象。了解这些对象及其功能非常重要,这样您就不会错过您可能希望在系统中拥有的炫酷功能。

安装 PostgreSQL加载示例数据库使用 pgAdmin GUI 应用程序连接到数据库服务器后,您将看到 PostgreSQL 提供了许多服务器和数据库对象。为了有效地利用 PostgreSQL 提供的每个对象的功能,您应该很好地理解每个对象是什么以及如何有效地使用它。

让我们熟悉一下这些 PostgreSQL 服务器和数据库对象。

服务器服务

当您安装 PostgreSQL 实例时,您将拥有相应的 PostgreSQL 服务器服务。PostgreSQL 服务器服务也称为 PostgreSQL 服务器。您可以在一台物理服务器上安装多个 PostgreSQL 服务器,使用不同的端口,并使用不同的位置来存储数据。

数据库

数据库是其他对象(例如表、视图函数索引)的容器。您可以在 PostgreSQL 服务器内创建任意数量的数据库。

img

表存储数据。一张表属于一个数据库,每个数据库又包含多个表。

PostgreSQL 有一个特殊功能叫表继承,这意味着一个表(子表)可以从另一个表(父表)继承,因此当您从子表中查询数据时,父表中的数据也会显示出来。

img

模式

模式是数据库中表和其他对象的逻辑层容器。每个 PostgreSQL 数据库可能有多个模式。

img

表空间

表空间是 PostgreSQL 物理层存储数据的地方。表空间允许您使用简单的命令,轻松地将数据跨磁盘移动到不同的物理位置。

默认情况下,PostgreSQL 为您提供两个表空间:

  1. pg_default用于存储用户数据。
  2. pg_global 用于存储系统数据。

下图是默认的表空间:

img

视图

视图是存储在数据库中的命名查询。除了只读视图之外,PostgreSQL 还支持可更新视图

img

函数

函数是可重用的 SQL 代码块,它返回多组行的标量值。

img

运算符

运算符是符号函数。PostgreSQL 允许您自定义运算符。

转换

转换对象使您能够将一种数据类型转换为另一种数据类型。由函数支持的转换对象来执行转换。您还可以创建自己的转换对象来覆盖 PostgreSQL 提供的默认转换。

序列

序列用于管理表中定义为 serial 列标识列的自动增量列。

img

扩展

PostgreSQL 从 9.1 版本开始引入了扩展概念,将其他对象(包括类型、强制转换、索引、函数等)包装到一个单元中。扩展的目的是为了更容易维护。

img

在本教程中,您学习了常见的 PostgreSQL 数据库和服务器对象。在开始下一个教程之前,只需花几分钟时间探索这些对象,即可获得它们的简要概述。