在输出为空的Python中读取MySQL查询

问题描述

我正在尝试将MysqL与python连接以便自动执行某些报告。现在,我只是在测试连接。似乎可以正常工作,但问题来了:我的Python代码输出与我在MysqL中获得的输出不同。

在这里,我附加使用的查询和可以在MysqL中找到的输出

Python连接的测试查询

SELECT accountID 
FROM Account
WHERE accountID in ('340','339','343');

MysqL输出(使用Dbiever)。对于此测试,选择的列包含整数:

  accountID
1   339
2   340
3   343

这里我附上了我的Python代码的实际输出

today:
20200811
Will return true if the connection works:
True
Empty DataFrame
Columns: [accountID]
Index: []

为了帮助您理解问题,请找到随附的我的python代码

import pandas as pd
import json
import pyMysqL
import paramiko
from datetime import date,time

tiempo_inicial = time()

today = date.today()
today= today.strftime("%Y%m%d")
print('today:')
print(today)


#from paramiko import SSHClient
from sshtunnel import SSHTunnelForwarder

**(part that contains all the connection information,due to data protection this part can't be shared)**

print('will return true if connection works:')
print(conn.open)


query = '''SELECT accountId
FROM Account
WHERE accountID in ('340','343');'''


            
data = pd.read_sql_query(query,conn)

print(data)
conn.close()

根据我的观点,由于连接正常,并且以前在MysqL中对其进行了正向输出测试,因此对该输出没有任何意义。我尝试了其他包含名称或日期的列,但结果没有改变。

您知道为什么我会得到“ Empty DataFrame”输出吗?

谢谢

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)