PostgreSQL 9.0

主要特性

SQL更改

新增

修改

  • ALTER TABLESPACE
    • ALTER TABLESPACE ... { SET | RESET } ( tablespace_options ) 语法新增 (提交 d86d51a9)
  • CREATE DATABASE
    • LC_COLLATE 选项新增 (初始提交 61d96749)
    • LC_CTYPE 选项新增 (初始提交 61d96749)
  • CREATE LANGUAGE
    • CREATE OR REPLACE LANGUAGE ... 语法新增 (提交 11b58470)
    • INLINE 选项新增 (提交 9048b731)
    • 已弃用 LANCOMPILER 选项移除 (提交 9048b731)
  • CREATE TABLE
    • CREATE TABLE ... (LIKE ... INCLUDING ALL) 语法新增 (提交 faa1afc6)
    • CREATE TABLE ... (LIKE ... INCLUDING COMMENTS) 语法新增 (提交 faa1afc6)
    • CREATE TABLE ... (LIKE ... INCLUDING STORAGE) 语法新增 (提交 faa1afc6)
    • CREATE TABLE ... OF TYPE composite_type 语法新增 (提交 e7b3349a)
    • UNIQUE, PRIMARY KEYEXCLUDE 约束可以设置为 [ NOT ] DEFERRABLE (提交 25d9bf2e)
  • CREATE TABLE AS
  • CREATE TRIGGER
    • WHEN 子句新增 (提交 7fc0f062)
    • 可以使用 UPDATE OF 语法为更新触发器指定单个列 (提交 b2734a0d)
  • EXPLAIN
    • EXPLAIN (option [, ...]) 语法新增 (提交 d4382c4a)
    • BUFFERS 选项新增 (提交 cddca5ec)
    • COSTS 选项新增 (提交 d4382c4a)
    • FORMAT 选项新增,带有以下输出格式:
  • FETCH
    • FROMIN 关键字变为可选 (提交 2ea179f3)
  • MOVE
    • FROMIN 关键字变为可选 (提交 2ea179f3)
  • SELECT
    • 允许混合使用传统和SQL标准的 OFFSET / LIMIT 语法 (提交 be4cd18f
    • 扩展了对框架选项的支持 (提交 ec4be2ee
      • 框架可以从 CURRENT_ROW 开始 (在 RANGEROWS 模式下)
      • 支持 ROWS n PRECEDINGROWS n FOLLOWING 起始和结束点
    • 在应用 LIMIT 后执行 SELECT ... FOR UPDATE / SHARE 处理 (提交 46e3a16b)
  • SELECT INTO
  • VACUUM
    • VACUUM FULL 现在执行完整的表重写 (初始提交 0a469c87)
    • 添加了带括号的选项语法 (提交 5e66a51c)

后端更改

常规

  • 添加了关系映射基础结构 (提交 b9b8831a)

数据目录

VACUUM

钩子

添加了以下 钩子

内部机制

  • genbki.shGen_fmgrtab.sh 完全被 genbki.plGen_fmgrtab.pl 替换 (提交 64737e93)

系统目录更改

新增

修改

已移除

视图

修改

系统函数

新增

配置更改

新增

修改

已移除

数据类型更改

修改

  • bytea
    • 添加十六进制字符串输入和输出 (提交 a2a8c7a6)

索引更改

GIN

  • 使用红黑树创建索引 (提交 5209c084)

libpq更改

复制更改

配置

新增

全文搜索变更

  • 添加同义词词典的前缀支持 (提交 abd8c94f)
  • 添加过滤词典支持 (提交 a88a4801)
  • 支持电子邮件地址中的下划线 (提交 89b0095e)
  • 改进 URL 解析,使其更符合标准 (提交 2c265ade)

过程语言更改

PL/pgSQL

PL/Perl

PL/Python

  • 添加对 DO 块的支持 (提交 adb77640)
  • 添加对 Python 3 的支持 (提交 dd4cd55c)

信息模式变更

服务器实用程序

修改

核心实用程序

新增

Contrib模块

新增

修改

预发行测试版本

标记PostgreSQL 9.0开发开始的初始提交为50a90fac(2010-02-17)。