python结果保存到变量_将sql结果存储在python中的变量中

去掉你的代码,这就是你要做的。row = c.ex...

row = c.fe..

row = c.fe...

在编程中,这叫做给变量赋值。

简言之,row是容器,您要多次替换它。

现在我们将忽略操作优化,只需遵循基本原则。conn = pymssql.connect(host='localhost', user='xx', password='xx', database='dbpython')

c = conn.cursor()

row = c.execute("select fid, fname, lname, contact from tblcontact where fname='maiji'")

rows = c.fetchall()

for row in rows:

print(row)

首先,c.fetchall()从查询中检索所有结果,我们将它们放入一个名为rows的变量中。然后我们通过执行for row in rows创建一个迭代器(您尝试使用while循环进行的操作)。然后我们简单地打印每一行。

你应该怎么做

这叫做上下文管理器。with pymssql.connect(host='localhost', user='xx', password='xx', database='dbpython') as conn:

c = conn.cursor()

rows = c.execute("select fid, fname, lname, contact from tblcontact where fname='maiji'")

for row in c.fetchall():

print(row)

这将打开一个名为conn的上下文句柄,当您完成代码时,该句柄将自动关闭连接(不留下可能有问题的打开连接),其次,它减少了直接在c.fetchall()上迭代的代码,并且如果函数支持迭代,则可能更快,这可能在以后的版本中会更快。

这里有一个例子,您只需将upp的所有结果添加到hughe字符串中(例如,用于转储到文件等)。注意如果结果很多,这可能会填满您的内存,在这种情况下按顺序将其存储到文件中会更好,因此,出于内存原因,您通常单独处理每个数据库行。with pymssql.connect(host='localhost', user='xx', password='xx', database='dbpython') as conn:

c = conn.cursor()

rows = c.execute("select fid, fname, lname, contact from tblcontact where fname='maiji'")

string_result = ''

for row in c.fetchall():

string_result = row + '\n'

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值