pg_publication_namespace
一个包含模式(schema)与发布(publication)之间关系的系统表
pg_publication_namespace 是一个 系统目录 表,其中包含模式(schema)与 发布(publication) 之间的映射关系。
pg_publication_namespace 是在 PostgreSQL 15 中添加的。
按 PostgreSQL 版本定义
pg_publication_namespace (PostgreSQL 19)
Table "pg_catalog.pg_publication_namespace"
Column | Type | Collation | Nullable | Default
---------+------+-----------+----------+---------
oid | oid | | not null |
pnpubid | oid | | not null |
pnnspid | oid | | not null |
Indexes:
"pg_publication_namespace_oid_index" PRIMARY KEY, btree (oid)
"pg_publication_namespace_pnnspid_pnpubid_index" UNIQUE CONSTRAINT, btree (pnnspid, pnpubid)
pg_publication_namespace (PostgreSQL 18)
Table "pg_catalog.pg_publication_namespace"
Column | Type | Collation | Nullable | Default
---------+------+-----------+----------+---------
oid | oid | | not null |
pnpubid | oid | | not null |
pnnspid | oid | | not null |
Indexes:
"pg_publication_namespace_oid_index" PRIMARY KEY, btree (oid)
"pg_publication_namespace_pnnspid_pnpubid_index" UNIQUE CONSTRAINT, btree (pnnspid, pnpubid)
pg_publication_namespace (PostgreSQL 17)
Table "pg_catalog.pg_publication_namespace"
Column | Type | Collation | Nullable | Default
---------+------+-----------+----------+---------
oid | oid | | not null |
pnpubid | oid | | not null |
pnnspid | oid | | not null |
Indexes:
"pg_publication_namespace_oid_index" PRIMARY KEY, btree (oid)
"pg_publication_namespace_pnnspid_pnpubid_index" UNIQUE CONSTRAINT, btree (pnnspid, pnpubid)
pg_publication_namespace (PostgreSQL 16)
Table "pg_catalog.pg_publication_namespace"
Column | Type | Collation | Nullable | Default
---------+------+-----------+----------+---------
oid | oid | | not null |
pnpubid | oid | | not null |
pnnspid | oid | | not null |
Indexes:
"pg_publication_namespace_oid_index" PRIMARY KEY, btree (oid)
"pg_publication_namespace_pnnspid_pnpubid_index" UNIQUE CONSTRAINT, btree (pnnspid, pnpubid)
pg_publication_namespace (PostgreSQL 15)
Table "pg_catalog.pg_publication_namespace"
Column | Type | Collation | Nullable | Default
---------+------+-----------+----------+---------
oid | oid | | not null |
pnpubid | oid | | not null |
pnnspid | oid | | not null |
Indexes:
"pg_publication_namespace_oid_index" PRIMARY KEY, btree (oid)
"pg_publication_namespace_pnnspid_pnpubid_index" UNIQUE CONSTRAINT, btree (pnnspid, pnpubid)
变更历史
- PostgreSQL 15
- 添加(提交 5a283246)
示例
如果为一个模式创建发布,则会在 pg_publication_namespace 中创建一个将该模式与该发布关联的条目。
postgres=# CREATE PUBLICATION foopub FOR ALL TABLES IN SCHEMA foo; CREATE PUBLICATION postgres=# SELECT * FROM pg_publication_namespace; oid | pnpubid | pnnspid -------+---------+--------- 16430 | 16429 | 16414 (1 row)
参考资料
- PostgreSQL 文档: pg_publication_namespace
