文档介绍:踏雪无痕
PostgreSQL
分类: 数据库 2012-03-21 17:37 117人阅读评论(0) 收藏举报
 
PostgreSQL是以加州大学伯克利分校计算机系开发的 POSTGRES,版本
(ORDBMS)。PostgreSQL支持大部分 SQL标准并且提供了许多其他现代特性:复杂查询、外键、触发器、视图、事
务完整性、多版本并发控制。同样,PostgreSQL 可以用许多方法扩展,比如, 通过增加新的数据类型、函数、操
作符、聚集函数、索引方法、过程语言。并且,因为许可证的灵活,任何人都可以以任何目的免费使用,修改,和
分发 PostgreSQL, 不管是私用,商用,还是学术研究使用。
历史
早期POSTGRES
现在被称为 PostgreSQL (发音为Post-gress-cue-ell 声音文件: MP3文件)的对象-关系型数据库管理系统(有一
段时间被称为 Postgres95)是从伯克利写的 POSTGRES 软件包发展而来的。经过十几年的发展, PostgreSQL 是世
界上可以获得的最先进的开放源码的数据库系统, 它提供了多版本并行控制,支持几乎所有 SQL 构件(包括子查
询,事务和用户定义类型和函数), 并且可以获得非常广阔范围的(开发)语言绑定(包括
C,C++,Java,perl,tcl,和 python)。
Postgres95
在 1994 年, Andrew Yu 和 Jolly Chen 向 POSTGRES 中增加了 SQL 语言的解释器。并随后将 Postgres95 源代
码发布到互联网上供大家使用, 成为一个开放源码的,原先伯克利 POSTGRES 代码的继承者。
Postgres95 所有源代码都是完全的 ANSI C , 而且代码量减少了 25%。并且有许多内部修改以利于提高性能和代
码的维护性。 Postgres95 版本 在进行 Wisconsin Benchmark 测试时大概比 POSTGRES 快 30-50%。
PostgreSQL
到了 1996 年, "Postgres95"改成新名字 PostgreSQL 用于反映最初的 POSTGRES 和最新的使用 SQL 的版本之间
的关系。同时版本号也重新从 开始, 将版本号放回到最初的由伯克利 POSTGRES 项目开始的顺序中。
Postgres95 版本的开发重点放在标明和理解现有的后端代码的问题上。 PostgreSQL 开发重点转到了一些有争议
的特性和功能上面,当然各个方面的工作同时都在进行。
PostgreSQL改进
除了修正了一些错误,下面的是一些主要
查询语言
原来的查询语言 PostQUEL 被 SQL 取代(在 server 端实现)。在 PostgreSQL 之前还不支持子查询)(但这个功
能可以在 Postgres95 里面由用户定义的 SQL 函数实现)。重新实现了聚集。同时还增加了对 GROUP BY 查询子句
的支持。 C 程序仍可以调用 libpq接口函数。
新增加了利用 GNU Readline 进行交互 SQL 查询(psql)。这个程序很大程度上取代了老的 m