Привет, Я DocuDroid!
Оценка ИИ поиска
Спасибо за оценку нашего ИИ поиска!
Мы будем признательны, если вы поделитесь своими впечатлениями, чтобы мы могли улучшить наш ИИ поиск для вас и других читателей.
GitHub

pg_shdepend

Системная таблица pg_shdepend содержит отношения зависимости между объектами базы данных и общими объектами, такими как роли. Эта информация позволяет Greengage DB убедиться, что на эти объекты нет ссылок, прежде чем пытаться удалить их. См. также pg_depend, которая выполняет похожую функцию для зависимостей, включающих объекты в пределах одной базы данных. В отличие от большинства системных каталогов, pg_shdepend является общим для всех баз данных: на систему приходится только одна копия pg_shdepend, а не по одной на каждую базу данных.

Во всех случаях запись pg_shdepend означает, что вышестоящий объект нельзя удалить без одновременного удаления зависимого объекта. Однако есть несколько подвидов зависимости, определяемых deptype:

  • SHARED_DEPENDENCY_OWNER (o) — вышестоящий объект (это должна быть роль) является владельцем зависимого объекта.

  • SHARED_DEPENDENCY_ACL (a) — вышестоящий объект (это должна быть роль) упоминается в списке управления доступом (access control list, ACL) подчиненного объекта.

  • SHARED_DEPENDENCY_PIN (p) — зависимый объект отсутствует; этот тип записи показывает, что система сама зависит от вышестоящего объекта, так что этот объект нельзя удалять ни при каких условиях. Записи этого типа создаются только при инициализации системы. Поля зависимого объекта в такой записи содержат нули.

Столбец Тип Ссылки Описание

dbid

oid

pg_database.oid

OID базы данных, в которой находится зависимый объект, или 0 для общего объекта

classid

oid

pg_class.oid

OID каталога, в котором находится зависимый объект

objid

oid

любой столбец типа OID

OID конкретного зависимого объекта

objsubid

integer

 — 

Для столбца таблицы это номер столбца. Для всех остальных типов объектов этот столбец равен 0

refclassid

oid

pg_class.oid

OID системного каталога, к которому относится вышестоящий объект

refobjid

oid

любой столбец типа OID

OID конкретного объекта, на который есть ссылка

deptype

char

 — 

Код, определяющий конкретную семантику этой зависимости