gpt4 book ai didi

django - 如何从 Django 中找到 Postgres 版本?

转载 作者:行者123 更新时间:2023-11-29 12:02:51 25 4
gpt4 key购买 nike

我想知道默认 Postgres 数据库的版本。如何使用 Django 找到它?

最佳答案

获取数据库连接:

from django.db import connection

并访问内部 psycopg2 连接对象:

print(connection.cursor().connection.server_version)

一行:

$ python3 manage.py shell -c "from django.db import connection; print(connection.cursor().connection.server_version)"
90504

在 Postgres 10 之后,这个数字是由服务器的主版本号乘以 10000 再加上次版本号组成的。例如,版本 10.1 将返回为 100001,版本 11.0 将返回为 110000。如果连接不好,则返回零。

在 Postgres 10 之前,该编号是通过将主要编号、次要编号和修订编号转换为两位十进制数字并将它们附加在一起而形成的。例如,版本 8.1.5 将返回为 80105。

因此,为了确定功能兼容性,应用程序应将 connection.server_version 的结果除以 100 而不是 10000,以确定逻辑主版本号。在所有版本系列中,次要版本(错误修复版本)之间只有最后两位数字不同。

文档:

https://www.psycopg.org/docs/connection.html#connection.server_version

https://www.postgresql.org/docs/current/libpq-status.html#LIBPQ-PQSERVERVERSION

关于django - 如何从 Django 中找到 Postgres 版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47232413/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com