【发布时间】:2017-01-30 15:46:57
【问题描述】:
如果软件连接到特定的 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
【问题讨论】:
-
如果超时是连接不上的可能原因,恐怕你也不能做得更好,只能等到超时结束。
-
看来您可以将超时时间(以秒为单位)传递给您对
connect()的调用,如此处所述postgresql.org/docs/current/static/…。这会满足您的需求吗?
标签: python postgresql psycopg2