python pyodbc 怎么获取某个表的字段名

http://my.oschina.net/zhengyijie/blog/35587
这里说通过pyodbc获取的数据,类似于一个元组,但是他们也可以通过字段名进行访问。
cursor.execute("select user_id, user_name from users")
row = cursor.fetchone()
print 'name:', row[1] # access by column index
print 'name:', row.user_name # or access by name
我试过了,可以通过字段名来访问这个元组。
sql_query = ('select top 2 * from User')
select_SQL = ms.Exec_selete(sql_query)
print select_SQL
for i in(select_SQL):
print i.QQ
结果是:
[(1, 'a1', '289746759'), (2, 'a2', '684000280')]
289746759
684000280
我的疑问是:
1.为什么元组可以通过关键字来访问?
2.返回的数据并没有包含字段名,程序是怎么通过字段名访问的?
3.可以通过pyodbc 获取某个表的字段名吗?我是SQL server 2008

这里返回的只是一个 类似元组 的对象,而不是一个 元组
虽然print出来和 元组 一样 (覆盖特殊方法 __repr__就可以了)
其实对象里面肯定是包含了字段名的,xx[1] 或 xx.name 或 xx["name"] 都是可以通过实现特殊方法来实现的
可以print dir(select_SQL) 探个究竟追问

准确的说应该是print dir(select_SQL[0])
print出来后发现有个cursor_description的特性。于是
print select_SQL[0].cursor_description。原来pyodbc提供了方法查看字段的各种属性的
3Q大神啊!

温馨提示:答案为网友推荐,仅供参考
相似回答