48.4. Система правил Postgres Pro
Postgres Pro поддерживает мощную систему правил для создания представлений и возможности изменения представлений. Система правил Postgres Pro претерпела две реализации:
Первый вариант производил обработку на уровне строк и был внедрён глубоко в исполнителе. Этот обработчик правил вызывался при обращении к каждой отдельной строке. Эта реализация была ликвидирована в 1995 г., когда последний официальный выпуск Berkeley Postgres превратился в Postgres95.
Во втором воплощении системы правил применили так называемое переписывание запроса. Система переписывания реализована в механизме, внедрённом между анализатором и планировщиком/оптимизатором. Этот механизм работает и сегодня.
Механизм переписывания запросов подробно обсуждается в Главе 38, так что здесь мы его не рассматриваем. Мы только отметим, что и на входе, и на выходе у него деревья запросов, то есть представление или уровень семантической детализации он не меняет. Переписывание запроса можно считать формой расширения макросов.
51.98. pg_user_mappings
The view pg_user_mappings
provides access to information about user mappings. This is essentially a publicly readable view of pg_user_mapping
that leaves out the options field if the user has no rights to use it.
Table 51.99. pg_user_mappings
Columns
Column Type Description |
---|
OID of the user mapping |
The OID of the foreign server that contains this mapping |
Name of the foreign server |
OID of the local role being mapped, or zero if the user mapping is public |
Name of the local user to be mapped |
User mapping specific options, as “keyword=value” strings |
To protect password information stored as a user mapping option, the umoptions
column will read as null unless one of the following applies:
current user is the user being mapped, and owns the server or holds
USAGE
privilege on itcurrent user is the server owner and mapping is for
PUBLIC
current user is a superuser