↑↓ select↵ open⌫ change scopeOpen full search

PG.CENTER connects PostgreSQL documentation, reference, and ecosystem knowledge. Maintained by Pigsty.

Wiki / Versions

ALTER object IF EXISTS

Recorded source states and original language descriptions. Missing version evidence stays unknown.

The source snapshot records transitions for PostgreSQL 8.1–18. The historical matrix records independent cells for 7.4–18. Neither records support for PostgreSQL 19 or 20; newer versions remain unknown. These source claims are distinct from runtime measurements.

Data Definition Language (DDL)

Description

Many objects now support IF EXISTS clauses on ALTER statements, such as tables, foreign tables, indexes, sequences etc.

Selected version: PostgreSQL 18

Yes

20191817161514131211109.69.59.49.39.29.19.08.48.38.28.18.07.4
UnknownUnknownYesYesYesYesYesYesYesYesYesYesYesYesYesYesNoNoNoNoNoNoUnknownUnknown

Compare versions

Original documentation links

Recorded legacy identifiers: 228

Complete source facts and provenance

yaml · center · 1dd22bf9a7f3ec325b894e2836fda535a25529f246a94dd41d6abbfe9997f7fd

{
  "Key": "alter-object-if-exists",
  "SourceKind": "yaml",
  "SourceDatabase": "center",
  "SourceTable": "featurematrix.yaml",
  "SourceKey": "ALTER object IF EXISTS",
  "SourceHash": "1dd22bf9a7f3ec325b894e2836fda535a25529f246a94dd41d6abbfe9997f7fd",
  "Name": "ALTER object IF EXISTS",
  "NameLocale": "en",
  "GroupKey": "data-definition-language-ddl",
  "GroupName": "Data Definition Language (DDL)",
  "GroupLocale": "en",
  "Ordinal": 0,
  "GroupOrder": 4,
  "Facts": {
    "feature": {
      "description": "Many objects now support IF EXISTS clauses on ALTER statements, such as tables, foreign tables, indexes, sequences etc.",
      "name": "ALTER object IF EXISTS",
      "versions": {
        "9.2": "Yes"
      }
    },
    "group": "Data Definition Language (DDL)",
    "versions": {
      "max": 18,
      "min": 8.1
    }
  },
  "Cells": [
    {
      "Version": "10",
      "State": "yes",
      "EvidenceKind": "yaml-transition",
      "TransitionVersion": "9.2",
      "Supported": true,
      "Original": "Yes"
    },
    {
      "Version": "11",
      "State": "yes",
      "EvidenceKind": "yaml-transition",
      "TransitionVersion": "9.2",
      "Supported": true,
      "Original": "Yes"
    },
    {
      "Version": "12",
      "State": "yes",
      "EvidenceKind": "yaml-transition",
      "TransitionVersion": "9.2",
      "Supported": true,
      "Original": "Yes"
    },
    {
      "Version": "13",
      "State": "yes",
      "EvidenceKind": "yaml-transition",
      "TransitionVersion": "9.2",
      "Supported": true,
      "Original": "Yes"
    },
    {
      "Version": "14",
      "State": "yes",
      "EvidenceKind": "yaml-transition",
      "TransitionVersion": "9.2",
      "Supported": true,
      "Original": "Yes"
    },
    {
      "Version": "15",
      "State": "yes",
      "EvidenceKind": "yaml-transition",
      "TransitionVersion": "9.2",
      "Supported": true,
      "Original": "Yes"
    },
    {
      "Version": "16",
      "State": "yes",
      "EvidenceKind": "yaml-transition",
      "TransitionVersion": "9.2",
      "Supported": true,
      "Original": "Yes"
    },
    {
      "Version": "17",
      "State": "yes",
      "EvidenceKind": "yaml-transition",
      "TransitionVersion": "9.2",
      "Supported": true,
      "Original": "Yes"
    },
    {
      "Version": "18",
      "State": "yes",
      "EvidenceKind": "yaml-transition",
      "TransitionVersion": "9.2",
      "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": "yes",
      "EvidenceKind": "yaml-transition",
      "TransitionVersion": "9.2",
      "Supported": true,
      "Original": "Yes"
    },
    {
      "Version": "9.3",
      "State": "yes",
      "EvidenceKind": "yaml-transition",
      "TransitionVersion": "9.2",
      "Supported": true,
      "Original": "Yes"
    },
    {
      "Version": "9.4",
      "State": "yes",
      "EvidenceKind": "yaml-transition",
      "TransitionVersion": "9.2",
      "Supported": true,
      "Original": "Yes"
    },
    {
      "Version": "9.5",
      "State": "yes",
      "EvidenceKind": "yaml-transition",
      "TransitionVersion": "9.2",
      "Supported": true,
      "Original": "Yes"
    },
    {
      "Version": "9.6",
      "State": "yes",
      "EvidenceKind": "yaml-transition",
      "TransitionVersion": "9.2",
      "Supported": true,
      "Original": "Yes"
    }
  ],
  "Texts": [
    {
      "Locale": "en",
      "Title": "ALTER object IF EXISTS",
      "BodyHTML": "\u003cp\u003eMany objects now support IF EXISTS clauses on ALTER statements, such as tables, foreign tables, indexes, sequences etc.\u003c/p\u003e\n",
      "SourceHash": "1dd22bf9a7f3ec325b894e2836fda535a25529f246a94dd41d6abbfe9997f7fd",
      "ContentHash": "9c1a86c98d1ec79e618063b07afa7ed11e5e7628cef5e99a0e90913d99389d73",
      "Payload": {
        "description": "Many objects now support IF EXISTS clauses on ALTER statements, such as tables, foreign tables, indexes, sequences etc.",
        "name": "ALTER object IF EXISTS",
        "versions": {
          "9.2": "Yes"
        }
      }
    },
    {
      "Locale": "zh-Hans",
      "Title": "ALTER object IF EXISTS",
      "BodyHTML": "\u003cp\u003e许多对象现在支持 ALTER 语句中的 IF EXISTS 子句,例如表、外部表、索引、序列等。\u003c/p\u003e\n",
      "SourceHash": "071091951021357a5f492adb04caed6febf4d315ac2626ca027a48dd8ec01d50",
      "ContentHash": "8d1b861008e0cb95e7f86b557881949b1c5c5777ac91dc430d36cf5157950fb2",
      "Payload": {
        "description": "许多对象现在支持 ALTER 语句中的 IF EXISTS 子句,例如表、外部表、索引、序列等。",
        "name": "ALTER object IF EXISTS"
      }
    }
  ],
  "GroupTitles": {
    "en": "Data Definition Language (DDL)",
    "zh-Hans": "数据定义语言 (DDL)"
  },
  "LegacyIDs": [
    "228"
  ]
}

Complete source data JSON