我每天都在使用python,主要关注数据库工作。Python pyodbc游标vs数据库游标
使用pyodbc我的标准起点是一样的东西
connection_hostname = pyodbc.connect('connection_string')
cursor_hostname = connection_hostname.cursor()
command_hostname = 'select * from everything_forever;'
cursor_hostname.execute('command_hostname')
如果我需要想重用,而不是创建一个新的光标的光标另一个查询,我可以存储结果,从像这样先查询设置:
results_from_query = cursor_hostname.fetchall()
然后继续。
到目前为止,这种方法对我来说效果很好。
最近,我改变了工作,当我演示上述技术时,一些通常使用GUI来处理数据库的新同事开始恐慌。什么设置它们是游标关键字。我明白游标对数据库来说是一个很大的禁忌,因为它们表明在集合论中没有建立逻辑,倾向于将主机推入低/零水平的并行化和RBAR类型的操作,但是我不相信ODBC游标I'上面的声明与我们在SQL Server工程和管理工具上使用的游标相同。
有人可以解释这些ODBC游标和SQL Server类型游标(假设我是正确的,他们是不同的)之间的区别?
如果我不正确,请启发我,告诉我如何更有效地与我的数据库交互。
为什么不能你只是直接从像有ODBC游标结构,因为他们有事情做与通过相同的连接,使多个游标来降低连接成本与此类似的
connection_hostname.execute(command_hostname)
我觉得一个连接上执行。离开基地?