Postgresql 简明教程

PostgreSQL - Overview

PostgreSQL 是一个功能强大的开源对象关系数据库系统。它拥有超过 15 年的积极开发阶段,并拥有经过验证的架构,使其享有很高的可靠性、数据完整性和正确性声誉。

本教程将帮助你快速上手 PostgreSQL,让你熟悉 PostgreSQL 编程。

What is PostgreSQL?

PostgreSQL(发音为 post-gress-Q-L )是一个由全球志愿者团队开发的开源关系型数据库管理系统(DBMS)。PostgreSQL 不受任何公司或其他私有实体控制,并且源代码可以免费获取。

A Brief History of PostgreSQL

PostgreSQL 最初称为 Postgres,由 UCB 一位名叫 Michael Stonebraker 的计算机科学教授创建。Stonebraker 在 1986 年启动 Postgres,作为其前身 Ingres 的后续项目(现由 Computer Associates 所有)。

  1. 1977-1985 − 开发了一个名为 INGRES 的项目。关系数据库的验证概念在 1980 年成立了 Ingres 公司在 1994 年被 Computer Associates 收购

  2. 1986-1994 − POSTGRES 在 INGRES 概念的基础上进行开发,重点是面向对象和查询语言 - Quel,没有使用 INGRES 的代码库作为 POSTGRES 的基础,商业化后称为 Illustra(被 Informix 收购,Informix 被 IBM 收购)

  3. 1994-1995 − Postgres95在 1994 年添加了对 SQL 的支持在 1995 年发布为 Postgres95在 1996 年重新发布为 PostgreSQL 6.0建立 PostgreSQL 全球开发团队

Key Features of 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 标准的大部分内容,并提供许多现代功能,包括以下功能:

  1. Complex SQL queries

  2. SQL Sub-selects

  3. Foreign keys

  4. Trigger

  5. Views

  6. Transactions

  7. Multiversion concurrency control (MVCC)

  8. 流复制(9.0 起)

  9. 热备用(9.0 起)

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

  1. Data types

  2. Functions

  3. Operators

  4. Aggregate functions

  5. Index methods

Procedural Languages Support

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