gpt4 book ai didi

python - 从python中的表数据集中获取列名

转载 作者:行者123 更新时间:2023-11-28 20:43:54 25 4
gpt4 key购买 nike

我正在尝试从表中获取列

 query = session.prepare("""  SELECT * FROM mytable   """)

row_data = session.execute(query, )

我想要的是从 row_data 中获取列名。有办法做到这一点吗?

最佳答案

在大多数 Python 数据库适配器中,您可以使用 DictCursor 通过类似于 Python 字典而不是元组的接口(interface)来检索记录。

使用 Cassandra :

>>> from cassandra.query import dict_factory
>>> session = cluster.connect('mykeyspace')
>>> session.row_factory = dict_factory
>>> rows = session.execute("SELECT name, age FROM users LIMIT 1")
>>> print rows[0]
{u'age': 42, u'name': u'Bob'}

使用 psycopg2:

>>> dict_cur = conn.cursor(cursor_factory=psycopg2.extras.DictCursor)
>>> dict_cur.execute("INSERT INTO test (num, data) VALUES(%s, %s)",
... (100, "abc'def"))
>>> dict_cur.execute("SELECT * FROM test")
>>> rec = dict_cur.fetchone()
>>> rec['id']
1
>>> rec['num']
100
>>> rec['data']
"abc'def"

使用 MySQLdb:

>>> import MySQLdb 
>>> import MySQLdb.cursors
>>> myDb = MySQLdb.connect(user='andy47', passwd='password', db='db_name', cursorclass=MySQLdb.cursors.DictCursor)
>>> myCurs = myDb.cursor()
>>> myCurs.execute("SELECT columna, columnb FROM tablea")
>>> firstRow = myCurs.fetchone()
{'columna':'first value', 'columnb':'second value'}

关于python - 从python中的表数据集中获取列名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28066146/

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