我在Python脚本中使用Mysql Connection。
如何从名单中获取表格的结果?
cursor = conn.cursor()
cursor.execute("SELECT * FROM local")
现在我通过索引来做到这一点:
results = cursor.fetchall()
for row in results:
print row[0] //
相反,我想通过名称来获取字段,如:print row["name"]
答案 0 :(得分:6)
如果您使用的是 mysql-connector ,请尝试使用
cursor = conn.cursor(dictionary=True)
cursor.execute("SELECT * FROM local")
results = cursor.fetchall()
for row in results:
print row['name']
如果dictionary为True,则游标将行作为字典返回。
答案 1 :(得分:2)
相反,您可以使用pandas库
import pandas as pd
sql = "SELECT * FROM local"
df = pd.read_sql(sql,conn)
for index,row in df.iterrows():
print(row['name'])
我希望这会有所帮助
答案 2 :(得分:0)
如果你正在使用MySQLdb for python,你可以向你的游标实例发送一个DictCursor。
以下是使用MySQLdb的完整示例:
>>> import MySQLdb
>>> db = MySQLdb.connect(host="localhost",user="test",passwd="test",db="test")
>>> cursor = db.cursor(MySQLdb.cursors.DictCursor)
>>> cursor.execute("SELECT * FROM test_user")
2
>>> results = cursor.fetchall()
>>> for result in results:
... print(result["username"])
test1
test2
希望它有用。
此外,您可以在这里找到适合您的元组情况的答案。 python mysql.connector DictCursor?