有没有办法在 Python 中使用列名而不是列索引来检索 SQL 结果列值?我将 Python 3 与 mySQL 一起使用。我正在寻找的语法很像 Java 构造:
Object id = rs.get("CUSTOMER_ID");
我有一个包含相当多列的表,不断地为我需要访问的每一列计算索引真的很痛苦。此外,索引使我的代码难以阅读。
谢谢!
最佳答案
MySQLdb模块有一个 DictCursor :
像这样使用它(取自 Writing MySQL Scripts with Python DB-API):
cursor = conn.cursor(MySQLdb.cursors.DictCursor)
cursor.execute("SELECT name, category FROM animal")
result_set = cursor.fetchall()
for row in result_set:
print "%s, %s" % (row["name"], row["category"])
编辑: 根据 user1305650,这适用于 pymysql
也是。
https://stackoverflow.com/questions/10195139/