gpt4 book ai didi

python - 为什么在连接到 SQL 后要在 python 中使用函数游标和连接关闭?

转载 作者:行者123 更新时间:2023-12-01 01:27:19 25 4
gpt4 key购买 nike

当您尝试连接到 SQL 数据库时,我试图了解 python 脚本中对cursor() 和连接 close() 函数的需求。

我目前有以下代码并且运行良好:

con = pyodbc.connect("Driver={SQL Server Native Client 11.0};"
"Server=servername;"
"Database=table;"
"Trusted_Connection=yes;") # type: object

sql = """select top 1000 * from Bill.dbo.Table"""
df = pd.read_sql_query(sql, con)
print(df)

但是,有些人正在使用以下内容,我不确定为什么:

cursor = conn.cursor()
conn.close

除了这个问题之外,是否还有更有效的方法来编写插入的代码?谢谢

最佳答案

当您创建连接或游标时,会创建并由该游标表示的资源。如果您不关闭它们,那么这些资源的保留时间可能会超过必要的时间,并且可能会泄漏。卫生很好。

就效率而言,Python 有 with block ,可以与上下文管理器配合使用,使这变得更容易。在 with block 的末尾,调用 __exit__ 方法,该方法通常会延迟 close (尽管对于 pyodbc 连接对象而言并非如此)。

with conn.cursor() as cursor:
#do things with cursor

关于python - 为什么在连接到 SQL 后要在 python 中使用函数游标和连接关闭?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53230079/

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