【发布时间】:2018-07-24 01:16:41
【问题描述】:
我有以下陈述:
from alembic import op
conn = op.get_bind()
现在我想获取 postgresql 版本。
【问题讨论】:
标签: postgresql psycopg2
我有以下陈述:
from alembic import op
conn = op.get_bind()
现在我想获取 postgresql 版本。
【问题讨论】:
标签: postgresql psycopg2
根据文档,它是server_version 连接属性:
conn = psycopg2.connect(settings.DB_DSN)
>>> conn.server_version
90504
数字是通过将主要、次要和修订号转换为两位十进制数字并将它们附加在一起而形成的。例如,版本 8.1.5 将返回为 80105。
【讨论】:
如果您可以运行原始 SQL 查询,只需运行以下命令:
SELECT version();
【讨论】:
show server_version; 或select current_setting('server_version'); 只获取版本号而没有详细信息。
如果你使用的是ubuntu那么你可以执行命令
psql -V
检查postgresql版本在哪里
V must be in capital.
要检查 psycopg2 的版本,您可以运行以下命令
pip freeze | grep psycopg2
你也可以执行
pip freeze
显示所有已安装的软件包及其各自的版本
【讨论】:
import os
import psycopg2
conn_str = {
'user': os.environ['USERNAME'].lower(),
'host': 'POSTGES_SERVER_NAME',
'port': 5432,
'database': 'database_name'
}
conn = psycopg2.connect(**conn_str)
cursor = conn.cursor()
cursor.execute('SELECT VERSION()')
row = cursor.fetchone()
print(row)
cursor.close()
# output:
# ('PostgreSQL 10.1, compiled by Visual C++ build 1800, 64-bit',)
【讨论】: