这是我到目前为止的代码:
from ConfigParser import *
import MySQLdb
configuration = ConfigParser()
configuration.read('someconfigfile.conf')
db = MySQLdb.connect(
host = configuration.get('DATABASE', 'MYSQL_HOST'),
user = configuration.get('DATABASE', 'MYSQL_USER'),
passwd = configuration.get('DATABASE', 'MYSQL_PASS'),
db = configuration.get('DATABASE', 'MYSQL_DB'),
port = configuration.getint('DATABASE', 'MYSQL_PORT'),
ssl = {
'ca': configuration.get('SSL_SETTINGS', 'SSL_CA'),
'cert': configuration.get('SSL_SETTINGS', 'SSL_CERT'),
'key': configuration.get('SSL_SETTINGS', 'SSL_KEY')
},
)
cursor = db.cursor()
sql = "SELECT column_name FROM information_schema.columns WHERE table_name='met';"
cursor.execute(sql)
list = cursor.fetchall()
print list
这是打印的内容:
(('field',), ('field',), ('field',), ('field',), ('field',), ('field',), ('field',), ('field',), ('field',), ('field',), ('field',), ('field',), ('field',), ('field',), ('pk_wind_spd2',), ('field',))
我得到的是一个元组而不是一个列表。我更喜欢有一个字符串列表
最佳答案
不要隐藏内置函数(列表),改为alist = cursor.fetchall()
此生成器表达式将为您提供元组中的列名:tuple(i[0] for i in alist)
关于python - 如何将 SQL 数据库中的字段名称放入 python 列表中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3143150/