Skip to content
← Catalog atlas / pg_namespace

SYSTEM CATALOG · System catalog

pg_namespace

The catalog pg_namespace stores namespaces. A namespace is the structure underlying SQL schemas: each namespace can have a separate collection of relations, types, etc. without name conflicts.

First seen PG 9.0Last seen PG 19Columns 4

Checked column by column against a PostgreSQL 18.6 instance · Raw measurement record ↗

Columns PostgreSQL 18

pg_namespace
COLUMNTYPEDESCRIPTION
oid oidNOT NULL Row identifier
nspname nameNOT NULL Name of the namespace
nspowner oidNOT NULL Owner of the namespaceReferences:pg_authid.oid
nspacl aclitem[] Access privileges; see Section 5.8 for details

Columns marked "implicit" are not included in SELECT *; some early statistics views are completed from same-version source, and the extra provenance is shown in the column description.

Common system columns 6

System attributes PostgreSQL provides, normally not expanded by SELECT *. Kept separately so they are not mixed in with ordinary columns.

ColumnsTypeattnum
tableoidoid-6
cmaxcid-5
xmaxxid-4
cmincid-3
xminxid-2
ctidtid-1

Column evolution matrix

Hover a cell for the column type
PresentAdded / type or attribute changeRemoved
COLUMN9.09.19.29.39.49.59.610111213141516171819
oid
nspname
nspowner
nspacl

9.0 is the coverage baseline; a column already present in the baseline is not marked as added. The matrix aligns columns by name, so a rename appears as the old column removed and a new column added.

Evolution timeline

Changes between adjacent majors

PostgreSQL 19 ← 18

1 column description updates

PostgreSQL 17 ← 16

1 column description updates

PostgreSQL 12 ← 11

~ oid: implicit → ordinary2 column description updates

PostgreSQL 9.3 ← 9.2

1 column description updates

Compare any two versions

Pick two versions to see added, removed, and retyped columns. The interactive comparison needs JavaScript; the evolution timeline reads fine without it.