我正在尝试使用pymysql
将mySQL查询结果存储在pandas DataFrame中,但构建DataFrame时遇到了错误。发现了类似的问题here和here,但看起来会抛出pymysql
特定的错误:
import pandas as pd
import datetime
import pymysql
# dummy values
connection = pymysql.connect(user='username', password='password', databse='database_name', host='host')
start_date = datetime.datetime(2017,11,15)
end_date = datetime.datetime(2017,11,16)
try:
with connection.cursor() as cursor:
query = "SELECT * FROM orders WHERE date_time BETWEEN %s AND %s"
cursor.execute(query, (start_date, end_date))
df = pd.DataFrame(data=cursor.fetchall(), index = None, columns = cursor.keys())
finally:
connection.close()
返回:AttributeError: 'Cursor'对象没有属性'keys'
如果我省略index
和columns
参数:
try:
with connection.cursor() as cursor:
query = "SELECT * FROM orders WHERE date_time BETWEEN %s AND %s"
cursor.execute(query, (start_date, end_date))
df = pd.DataFrame(cursor.fetchall())
finally:
connection.close()
返回ValueError: DataFrame 构造函数调用不正确!
先行致谢!