python - 测试 Postgres-DB 的连接

标签 python postgresql psycopg2

如果软件连接到特定的 Postgre-DB,我想在 GUI 上放一个按钮。我写了一个小测试函数:如果它可以连接到数据库,则返回 True,否则返回 False。

代码有效,但有一个问题:如果没有连接(我只是拔掉互联网电缆,没有其他变化),它只是 需要太多时间。 如果没有连接,你能帮我使代码更快吗?

这是我的简单测试函数:

import psycopg2

def postgres_test():

    try:
        conn = psycopg2.connect("dbname='mydb' user='myuser' host='my_ip' password='mypassword'")
        conn.close()
        return True
    except:
        return False

最佳答案

感谢您的评论。是的,它与超时有关。

这是我更快的代码:

import psycopg2

def postgres_test():

    try:
        conn = psycopg2.connect("dbname='mydb' user='myuser' host='my_ip' password='mypassword' connect_timeout=1 ")
        conn.close()
        return True
    except:
        return False

关于python - 测试 Postgres-DB 的连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41939971/

相关文章:

python - ipython和python之间的输出差异

regex - Django 。 PostgreSQL。 regexp_split_to_table 不工作

java - hibernate/Postgres : duplicate key value violates unique constraint

生成事件序列的sql查询

python - 如何使用一个顶级列对多索引 pandas 数据框进行排序?

python - Django:将新外键添加到现有模型,默认值为同一模型中的另一个外键

python - 如何从字典列表中获取字典的数据

python - 使用 python 创建 Postgres 数据库

python - 无法在 Linux 上 pip 安装 psycopg2

python - 如何在 python 脚本中格式化 postgreSQL 查询以获得更好的可读性?