Как мне перечислить все расширения, которые уже установлены в базе данных или схеме из psql?
Смотрите также
Как мне перечислить все расширения, которые уже установлены в базе данных или схеме из psql?
Смотрите также
Ответы:
В PSQL это было бы
\dx
Подробности см. В руководстве: http://www.postgresql.org/docs/current/static/app-psql.html.
Делая это в простом SQL, это будет выбор pg_extension
:
SELECT *
FROM pg_extension
http://www.postgresql.org/docs/current/static/catalog-pg-extension.html
\dx
- это команда psql, которая была введена в 9.0, когда эта create extension
функция была выпущена. Так что да, вам также нужно обновить свою версию psql
(вы всегда должны использовать psql
версию, соответствующую версии вашей БД)
select * from pg_extension
Кроме того, если вы хотите узнать, какие расширения доступны на вашем сервере: SELECT * FROM pg_available_extensions
Этот SQL-запрос дает вывод, похожий на \dx
:
SELECT e.extname AS "Name", e.extversion AS "Version", n.nspname AS "Schema", c.description AS "Description"
FROM pg_catalog.pg_extension e
LEFT JOIN pg_catalog.pg_namespace n ON n.oid = e.extnamespace
LEFT JOIN pg_catalog.pg_description c ON c.objoid = e.oid AND c.classoid = 'pg_catalog.pg_extension'::pg_catalog.regclass
ORDER BY 1;
Благодаря https://blog.dbi-services.com/listing-the-extensions-available-in-postgresql/