【发布时间】:2021-08-04 18:54:59
【问题描述】:
我正在开发一个 python 程序,其功能包括使用 psycopg2 从 postgres 数据库中插入和检索值。问题是每次我想创建一个查询时,我都必须连接到数据库,因此以下代码 sn-p 在整个文件中多次出现:
# Instantiate Connection
try:
conn = psycopg2.connect(
user=userName,
password=passwrd,
host=hostAddr,
database=dbName
)
# Instantiate Cursor
cur = conn.cursor()
return cur
except psycopg2.Error as e:
print(f"Error connecting to Postgres Platform: {e}")
sys.exit(1)
我的问题是:
-
有没有一种方法可以创建一个方法来在每次我希望连接到数据库时调用?我尝试创建一个,但由于变量
cur和conn不是全局变量,我得到了一堆错误 -
我可以在程序开始时只连接一次数据库并在程序运行的整个过程中保持连接打开吗?这似乎是最简单的选择,但我不确定这是否是不好的做法(作为参考,程序将 24/7 运行,所以我认为最好只在进行查询时进行连接)。
感谢您的帮助。
【问题讨论】:
标签: python postgresql psycopg2