PostgreSQL 概述
PostgreSQL 是一个功能强大的开源面向对象的关系型数据库系统。它拥有15多年的活跃开发阶段,通过其可靠性,数据完整性和正确性获得了良好的声誉。
这个教程将帮助您快速入门 PostgreSQL,让您对 PostgreSQL 编程感到舒适。
什么是 PostgreSQL
PostgreSQL(发音为 post-gress-Q-L )是一个由全球志愿者团队开发的开源关系型数据库管理系统(DBMS)。PostgreSQL 不受任何公司或其他私人实体的控制,并且源代码可以免费获取。
PostgreSQL的简要历史
PostgreSQL最初被称为Postgres,由UCB的计算机科学教授Michael Stonebraker创建。Stonebraker在1986年创建了Postgres作为其前身项目Ingres的后续项目,Ingres现在归属于计算机关联公司所有。
- 1977-1985 − 开发了一个名为INGRES的项目。
- 关系型数据库的概念验证
-
在1980年成立了Ingres公司
-
1994年被Computer Associates收购
-
1986-1994 − POSTGRES
- 在INGRES的概念基础上进行了发展,重点关注对象导向和查询语言 – Quel
-
没有使用INGRES的代码作为POSTGRES的基础
-
后商业化为Illustra(被Informix收购,随后被IBM收购)
- 在INGRES的概念基础上进行了发展,重点关注对象导向和查询语言 – Quel
-
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等。