PostgreSQL 9.0

主要特性

SQL 更改

已添加

已修改

  • ALTER ROLE
    • 添加了 ALTER ROLE ... [ IN DATABASE ] { SET | RESET } 语法(提交 2eda8dfb
  • 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
    • UNIQUEPRIMARY KEYEXCLUDE 约束可以设置为 [ NOT ] DEFERRABLE (提交 25d9bf2e
  • CREATE TABLE AS
  • CREATE TRIGGER
    • 添加了 WHEN 子句(提交 7fc0f062
    • 可以通过 UPDATE OF 语法为更新触发器指定单个列(提交 b2734a0d
  • EXPLAIN
    • 添加了 EXPLAIN (option [, ...]) 语法(提交 d4382c4a
    • 添加了 BUFFERS 选项(提交 cddca5ec
    • 添加了 COSTS 选项(提交 d4382c4a
    • 添加了 FORMAT 选项,支持以下输出格式:
  • FETCH
    • FROM and IN 关键字已成为可选 (commit 2ea179f3)
  • MOVE
    • FROM and IN 关键字已成为可选 (commit 2ea179f3)
  • SELECT
    • 允许混合使用传统语法和 SQL 标准的 OFFSET / LIMIT 语法(提交 be4cd18f
    • 扩展了框架选项的支持(提交 ec4be2ee
      • 框架可以从 CURRENT_ROW 开始(在 RANGEROWS 模式下)
      • 支持 ROWS n PRECEDINGROWS n FOLLOWING 的开始和结束点
    • SELECT ... FOR UPDATE / SHARE 的处理在应用 LIMIT 之后执行(提交 46e3a16b
  • SELECT INTO
  • VACUUM
    • VACUUM FULL 现在执行完整的表重写(初始提交 0a469c87
    • 添加了括号选项语法(提交 5e66a51c

后端更改

通用

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

数据目录

Vacuuming

  • 执行完全的 VACUUM(“VACUUM FULL”)现在执行完整的表重写(初始提交 0a469c87

钩子

添加了以下钩子

内部结构

  • genbki.shGen_fmgrtab.shgenbki.plGen_fmgrtab.pl 完全取代(提交 64737e93

系统目录更改

已添加

已修改

移除

视图

已修改

系统函数

已添加

配置更改

已添加

已修改

移除

数据类型更改

已修改

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

索引更改

GIN

  • 使用红黑二叉树进行索引创建(提交 5209c084

libpq 更改

复制更改

配置

已添加

全文搜索更改

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

过程语言更改

PL/pgSQL

PL/Perl

  • 添加了对 DO 块的支持(提交 42b2907d
  • 添加了各种以下实用函数(提交 05672e50

PL/Python

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

信息模式更改

服务器实用程序

已修改

核心实用程序

已添加

Contrib模块

已添加

已修改

预发布测试版本

标志着 PostgreSQL 9.0 开发开始的初始提交是 50a90fac (2010-02-17)。