假设我有一个MySQL表,通过MySQLDB进行访问。我有一个标准的
SELECT statement:
sql = "SELECT * FROM EMPLOYEE \
WHERE INCOME > '%d'" % (1000)
然后我使用光标执行它,并按以下方式提取列。
cursor.execute(sql)
results = cursor.fetchall()
for row in results:
fname = row[0]
lname = row[1]
age = row[2]
sex = row[3]
income = row[4]
是否有可能一次性地为所有列命名,例如:
for row in results:
fname, lname, age, sex, income = unpack(row)
我可以随时执行以下操作:
fname, lname, age, sex, income = row[0], row[1], row[2], row[3], row[4]
但是我的表中有超过30个列,这让人感到痛苦。 请注意,虽然我现在正在使用MySQL,但我希望尽可能地与数据库无关;我们的管理者可能随时决定将所有内容移植到另一个数据库。
for fname, lname, age, sex, income in results:
呢? - njzk2SELECT *
,否则会导致错误。 - Mark RansomPRAGMA table_info()
查询,以查看列数和标题名称。 - Ma0