↑↓ 选择↵ 打开⌫ 切换范围完整搜索

PG.CENTER 连接 PostgreSQL 文档、百科与生态知识。由 Pigsty 维护。

Wiki / 版本

时态约束

已记录的来源状态与原始语言说明;缺少版本证据时明确标为未知。

来源快照记录 PostgreSQL 8.1–18 的变化节点;历史矩阵独立记录 7.4–18 的状态。两者均未记录 PostgreSQL 19 或 20 的支持状态,较新版本明确保留为未知。这些来源声明与运行测量相互独立。

数据定义语言 (DDL)

说明

时态约束是作用于时间范围的约束,既可用于 PRIMARY KEY,也可用于 UNIQUE 约束。

所选版本: PostgreSQL 18

支持

比较版本

原始文档链接

完整来源事实与出处

yaml · center · 1dd22bf9a7f3ec325b894e2836fda535a25529f246a94dd41d6abbfe9997f7fd

{
  "Key": "temporal-constraints",
  "SourceKind": "yaml",
  "SourceDatabase": "center",
  "SourceTable": "featurematrix.yaml",
  "SourceKey": "Temporal constraints",
  "SourceHash": "1dd22bf9a7f3ec325b894e2836fda535a25529f246a94dd41d6abbfe9997f7fd",
  "Name": "Temporal constraints",
  "NameLocale": "en",
  "GroupKey": "data-definition-language-ddl",
  "GroupName": "Data Definition Language (DDL)",
  "GroupLocale": "en",
  "Ordinal": 11,
  "GroupOrder": 4,
  "Facts": {
    "feature": {
      "description": "Temporal constraints are constraints over ranges. These are available for both [`PRIMARY KEY`](https://www.postgresql.org/docs/18/sql-createtable.html#SQL-CREATETABLE-PARMS-PRIMARY-KEY) and [`UNIQUE`](https://www.postgresql.org/docs/18/sql-createtable.html#SQL-CREATETABLE-PARMS-UNIQUE) constraints using the `WITHOUT OVERLAPS` clause, and [`FOREIGN KEY`](https://www.postgresql.org/docs/18/sql-createtable.html#SQL-CREATETABLE-PARMS-REFERENCES) constraints using the `PERIOD` clause.",
      "name": "Temporal constraints",
      "versions": {
        "18": "Yes"
      }
    },
    "group": "Data Definition Language (DDL)",
    "versions": {
      "max": 18,
      "min": 8.1
    }
  },
  "Cells": [
    {
      "Version": "10",
      "State": "no",
      "EvidenceKind": "yaml-default-no",
      "TransitionVersion": "",
      "Supported": false,
      "Original": "No"
    },
    {
      "Version": "11",
      "State": "no",
      "EvidenceKind": "yaml-default-no",
      "TransitionVersion": "",
      "Supported": false,
      "Original": "No"
    },
    {
      "Version": "12",
      "State": "no",
      "EvidenceKind": "yaml-default-no",
      "TransitionVersion": "",
      "Supported": false,
      "Original": "No"
    },
    {
      "Version": "13",
      "State": "no",
      "EvidenceKind": "yaml-default-no",
      "TransitionVersion": "",
      "Supported": false,
      "Original": "No"
    },
    {
      "Version": "14",
      "State": "no",
      "EvidenceKind": "yaml-default-no",
      "TransitionVersion": "",
      "Supported": false,
      "Original": "No"
    },
    {
      "Version": "15",
      "State": "no",
      "EvidenceKind": "yaml-default-no",
      "TransitionVersion": "",
      "Supported": false,
      "Original": "No"
    },
    {
      "Version": "16",
      "State": "no",
      "EvidenceKind": "yaml-default-no",
      "TransitionVersion": "",
      "Supported": false,
      "Original": "No"
    },
    {
      "Version": "17",
      "State": "no",
      "EvidenceKind": "yaml-default-no",
      "TransitionVersion": "",
      "Supported": false,
      "Original": "No"
    },
    {
      "Version": "18",
      "State": "yes",
      "EvidenceKind": "yaml-transition",
      "TransitionVersion": "18",
      "Supported": true,
      "Original": "Yes"
    },
    {
      "Version": "8.1",
      "State": "no",
      "EvidenceKind": "yaml-default-no",
      "TransitionVersion": "",
      "Supported": false,
      "Original": "No"
    },
    {
      "Version": "8.2",
      "State": "no",
      "EvidenceKind": "yaml-default-no",
      "TransitionVersion": "",
      "Supported": false,
      "Original": "No"
    },
    {
      "Version": "8.3",
      "State": "no",
      "EvidenceKind": "yaml-default-no",
      "TransitionVersion": "",
      "Supported": false,
      "Original": "No"
    },
    {
      "Version": "8.4",
      "State": "no",
      "EvidenceKind": "yaml-default-no",
      "TransitionVersion": "",
      "Supported": false,
      "Original": "No"
    },
    {
      "Version": "9.0",
      "State": "no",
      "EvidenceKind": "yaml-default-no",
      "TransitionVersion": "",
      "Supported": false,
      "Original": "No"
    },
    {
      "Version": "9.1",
      "State": "no",
      "EvidenceKind": "yaml-default-no",
      "TransitionVersion": "",
      "Supported": false,
      "Original": "No"
    },
    {
      "Version": "9.2",
      "State": "no",
      "EvidenceKind": "yaml-default-no",
      "TransitionVersion": "",
      "Supported": false,
      "Original": "No"
    },
    {
      "Version": "9.3",
      "State": "no",
      "EvidenceKind": "yaml-default-no",
      "TransitionVersion": "",
      "Supported": false,
      "Original": "No"
    },
    {
      "Version": "9.4",
      "State": "no",
      "EvidenceKind": "yaml-default-no",
      "TransitionVersion": "",
      "Supported": false,
      "Original": "No"
    },
    {
      "Version": "9.5",
      "State": "no",
      "EvidenceKind": "yaml-default-no",
      "TransitionVersion": "",
      "Supported": false,
      "Original": "No"
    },
    {
      "Version": "9.6",
      "State": "no",
      "EvidenceKind": "yaml-default-no",
      "TransitionVersion": "",
      "Supported": false,
      "Original": "No"
    }
  ],
  "Texts": [
    {
      "Locale": "en",
      "Title": "Temporal constraints",
      "BodyHTML": "\u003cp\u003eTemporal constraints are constraints over ranges. These are available for both \u003ca href=\"https://www.postgresql.org/docs/18/sql-createtable.html#SQL-CREATETABLE-PARMS-PRIMARY-KEY\" rel=\"nofollow\"\u003e\u003ccode\u003ePRIMARY KEY\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://www.postgresql.org/docs/18/sql-createtable.html#SQL-CREATETABLE-PARMS-UNIQUE\" rel=\"nofollow\"\u003e\u003ccode\u003eUNIQUE\u003c/code\u003e\u003c/a\u003e constraints using the \u003ccode\u003eWITHOUT OVERLAPS\u003c/code\u003e clause, and \u003ca href=\"https://www.postgresql.org/docs/18/sql-createtable.html#SQL-CREATETABLE-PARMS-REFERENCES\" rel=\"nofollow\"\u003e\u003ccode\u003eFOREIGN KEY\u003c/code\u003e\u003c/a\u003e constraints using the \u003ccode\u003ePERIOD\u003c/code\u003e clause.\u003c/p\u003e\n",
      "SourceHash": "1dd22bf9a7f3ec325b894e2836fda535a25529f246a94dd41d6abbfe9997f7fd",
      "ContentHash": "cd3f46fb7de40f7092542abd3c7389ac0b66918bd1bb2ced9760468ec8432713",
      "Payload": {
        "description": "Temporal constraints are constraints over ranges. These are available for both [`PRIMARY KEY`](https://www.postgresql.org/docs/18/sql-createtable.html#SQL-CREATETABLE-PARMS-PRIMARY-KEY) and [`UNIQUE`](https://www.postgresql.org/docs/18/sql-createtable.html#SQL-CREATETABLE-PARMS-UNIQUE) constraints using the `WITHOUT OVERLAPS` clause, and [`FOREIGN KEY`](https://www.postgresql.org/docs/18/sql-createtable.html#SQL-CREATETABLE-PARMS-REFERENCES) constraints using the `PERIOD` clause.",
        "name": "Temporal constraints",
        "versions": {
          "18": "Yes"
        }
      }
    },
    {
      "Locale": "zh-Hans",
      "Title": "时态约束",
      "BodyHTML": "\u003cp\u003e时态约束是作用于时间范围的约束,既可用于 \u003ccode\u003ePRIMARY KEY\u003c/code\u003e,也可用于 \u003ccode\u003eUNIQUE\u003c/code\u003e 约束。\u003c/p\u003e\n",
      "SourceHash": "071091951021357a5f492adb04caed6febf4d315ac2626ca027a48dd8ec01d50",
      "ContentHash": "ffc64e5a1785144dedd75c0ec54a0b4a491160688161401519690d40b90a2ee0",
      "Payload": {
        "description": "时态约束是作用于时间范围的约束,既可用于 `PRIMARY KEY`,也可用于 `UNIQUE` 约束。",
        "name": "时态约束"
      }
    }
  ],
  "GroupTitles": {
    "en": "Data Definition Language (DDL)",
    "zh-Hans": "数据定义语言 (DDL)"
  }
}

完整来源数据 JSON