ARV*_*ARV 203 postgresql psql postgresql-extensions
如何从psql列出已安装在数据库或模式中的所有扩展?
也可以看看
a_h*_*ame 308
在psql中即可
\dx
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅手册:http://www.postgresql.org/docs/current/static/app-psql.html
在普通SQL中执行它将是一个选择pg_extension:
SELECT *
FROM pg_extension
Run Code Online (Sandbox Code Playgroud)
http://www.postgresql.org/docs/current/static/catalog-pg-extension.html
Neb*_*tic 14
以下查询输出已安装的扩展及其版本的列表:
SELECT oid, extname, extversion FROM pg_extension;
Run Code Online (Sandbox Code Playgroud)
| 奥德 | 扩展名 | 外向性 |
|---|---|---|
| 13763 | plpgsql | 1.0 |
| 18536 | http | 1.5 |
| 22466 | 字典xsyn | 1.0 |
如果您想知道哪些其他扩展及其版本可供安装,请运行以下查询:
SELECT name, default_version, installed_version
FROM pg_available_extensions;
Run Code Online (Sandbox Code Playgroud)
| 姓名 | 默认版本 | 安装版本 |
|---|---|---|
| 字典xsyn | 1.0 | 1.0 |
| 段 | 1.4 | 无效的 |
| PG加密 | 1.3 | 无效的 |
| plpgsql | 1.0 | 1.0 |
要安装扩展(如果它不存在),请运行以下查询:
CREATE EXTENSION [ IF NOT EXISTS ] extension_name;
Run Code Online (Sandbox Code Playgroud)
要将扩展升级到较新版本,请使用以下查询:
ALTER EXTENSION extension_name UPDATE TO 'new_version';
Run Code Online (Sandbox Code Playgroud)
Sum*_*t S 12
只是评论一下您是否按照上面的建议运行,在 psql 中
\dx
或者
select extname from pg_extension ;
Run Code Online (Sandbox Code Playgroud)
请记住
hit*_*t3k 11
此 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;
Run Code Online (Sandbox Code Playgroud)
感谢https://blog.dbi-services.com/listing-the-extensions-available-in-postgresql/
在提取扩展信息之前,先了解一下后台运行的一些内容,因为如果您直接从应用程序或驱动程序使用查询来从 postgresql 提取此信息,这可能会很有帮助。
正在从名为和 的\dx目录组合中为您提取信息。pg_extension, pg_namespace, pg_descriptionregclass
登录,进入psql下面提到的提示:
psql -h localhost -d postgres -U username -E
带有一个-E开关,可以为您提供任何别名正在使用的隐藏命令的详细信息。一旦你进入,你可以简单地做一个\dx
这给了你这个:
********* QUERY **********
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;
**************************
List of installed extensions
Name | Version | Schema | Description
---------+---------+------------+------------------------------
plpgsql | 1.0 | pg_catalog | PL/pgSQL procedural language
Run Code Online (Sandbox Code Playgroud)
如果您要使用像 DBweaver 或 PGADMIN 这样的客户端,那么斜杠命令可能对您不起作用,甚至在 ORM 等情况下也是如此。您可以使用上面的命令并获取有关扩展的类似信息,甚至是 postgres 的任何其他别名命令。
| 归档时间: |
|
| 查看次数: |
98960 次 |
| 最近记录: |