你的位置:
问答吧
-> Python
-> 问题详情
求教Python mysql 关于查询结果的处理
我建立了一张数据库的表 clientinfomation,格式:
Name Phone Address Company
A 123 abc bcd
B 234 bcd cde
C 345 cde def
我使用python中的fetchall函数:
sql1 = "select * from clientinfomation"
self.count = self.cur.execute(sql1)
self.cur = self.conn.cursor()
self.alldata = self.cur.fetchall()
print self.alldata
这样能显示所有的查到的信息。
但是我想这样:
self.Namestr = ''
self.Phonestr = ''
self.Addressstr = ''
self.Companystr = ''
用上面四个参数去接收获得的信息的每一列信息,应该如何完成,使用什么函数?谢谢
作者: ckycst
发布时间: 2011-11-10
数据都在alldata里,直接访问啊。
作者: iambic
发布时间: 2011-11-10
数据是在alldata中,我想知道如何这样:
self. Namestr = 'A'
self. Phonestr = '123'
self. Addressstr = 'abc'
self. Companystr = 'bcd'
...
...
作者: ckycst
发布时间: 2011-11-10
不知道你什么意思。这个?
Python code
forrowinalldata :printrow['Namestr']
作者: iambic
发布时间: 2011-11-10
就是说:fetchall后,信息都在alldata中,但是我需要把alldata中的信息分类存储:
定义了self.Namestr 存储 表中Name列的信息,self.Phonestr存储 表中的Phone列的信息... :self. Namestr = 'A', self. Phonestr = '123',self. Addressstr = 'abc',self. Companystr = 'bcd' ...不知道如何实现
作者: ckycst
发布时间: 2011-11-10
sql1 = "select * from clientinfomation"
self.count = self.cur.execute(sql1)
self.cur = self.conn.cursor()
self.alldata = self.cur.fetchall()
----------
能执行吗?循序错了把。应该先有cursor然后才能execute
另外,fetchall()获取的是元组。
可以通过self.alldata[i]来获取元组中的每条记录。
你说的那个方式,需要自己再处理,应该没有系统函数可以直接读取的
作者: frankwangzy1103
发布时间: 2011-11-10
引用 4 楼 ckycst 的回复:
就是说:fetchall后,信息都在alldata中,但是我需要把alldata中的信息分类存储:
定义了self.Namestr 存储 表中Name列的信息,self.Phonestr存储 表中的Phone列的信息... :self. Namestr = 'A', self. Phonestr = '123',self. Addressstr = 'abc',self. Companystr……
什么“列的信息”?你要存列名吗?还是返回结果里的列的数据?数据的话肯定每列都是一个list,你拿一个字符串来赋值又是干什么?
作者: iambic
发布时间: 2011-11-10