PostgreSQL - 概述


PostgreSQL 是一个功能强大的开源对象关系数据库系统。它经过超过 15 年的积极开发阶段和经过验证的架构,为其在可靠性、数据完整性和正确性方面赢得了良好的声誉。

本教程将帮助您快速入门 PostgreSQL,并让您熟悉 PostgreSQL 编程。

什么是 PostgreSQL?

PostgreSQL(发音为post-gress-QL)是一个开源关系数据库管理系统 (DBMS),由全球志愿者团队开发。PostgreSQL 不受任何公司或其他私人实体控制,源代码免费提供。

PostgreSQL 简史

PostgreSQL 最初称为 Postgres,是由 UCB 计算机科学教授 Michael Stonebraker 创建的。Stonebraker 于 1986 年创建了 Postgres,作为其前身 Ingres(现归 Computer Associates 所有)的后续项目。

  • 1977-1985 – 开发了一个名为 INGRES 的项目。

    • 关系数据库的概念验证

    • 1980年成立安格尔公司

    • 1994 年被 Computer Associates 收购

  • 1986-1994 – 研究生

    • INGRES 中概念的发展,重点是面向对象和查询语言 - Quel

    • INGRES 的代码库未用作 POSTGRES 的基础

    • 商业化为 Illustra(被 Informix 收购,被 IBM 收购)

  • 1994-1995 - Postgres95

    • 1994 年添加了对 SQL 的支持

    • 1995 年作为 Postgres95 发布

    • 1996 年重新发布为 PostgreSQL 6.0

    • PostgreSQL全球开发团队成立

PostgreSQL 的主要特性

PostgreSQL 可在所有主要操作系统上运行,包括 Linux、UNIX(AIX、BSD、HP-UX、SGI IRIX、Mac OS X、Solaris、Tru64)和 Windows。它支持文本、图像、声音和视频,并包括 C/C++、Java、Perl、Python、Ruby、Tcl 和开放数据库连接 (ODBC) 的编程接口。

PostgreSQL 支持大部分 SQL 标准并提供许多现代功能,包括以下功能 -

  • 复杂的 SQL 查询
  • SQL 子选择
  • 外键
  • 扳机
  • 意见
  • 交易
  • 多版本并发控制 (MVCC)
  • 流式复制(从 9.0 开始)
  • 热备(9.0 起)

您可以查看PostgreSQL的官方文档来了解上述功能。用户可以通过多种方式扩展 PostgreSQL。例如通过添加新的 -

  • 数据类型
  • 功能
  • 运营商
  • 聚合函数
  • 索引方法

过程语言支持

PostgreSQL支持四种标准的过程语言,允许用户用任何一种语言编写自己的代码,并且可以由PostgreSQL数据库服务器执行。这些过程语言是 - PL/pgSQL、PL/Tcl、PL/Perl 和 PL/Python。此外,还支持其他非标准过程语言,如 PL/PHP、PL/V8、PL/Ruby、PL/Java 等。