mySQLdb连接返回截断的输出

时间:2017-09-19 01:53:17

标签: python mysql mysql-python mysql-connector-python

我试图远程连接到运行存储过程的sql server并返回一个巨大的文件作为输出。

当我在SQLbox上本地运行文件时它很好并且按预期返回~800,000行,但是当我尝试使用python的mySQLdb库运行它时,它会收到仅约6000行的截断输出。

它适用于较小的数据,所以我猜测有一些结果限制即将发挥作用。

我确定某些属性需要在某处更改,但似乎没有关于pypi库的相关文档。

为了便于说明,我在下面提供了我的代码:

import MySQLdb
import pandas as pd

connection = MySQLdb.connect(sql_server,sql_admin,sql_pw,sql_db)
sql_command = """call function(4)"""
return pd.read_sql(sql_command, connection)

1 个答案:

答案 0 :(得分:0)

我能够使用游标解决这个问题。我采取的方法如下所示,希望能帮助其他人。

connection = MySQLdb.connect (host = sql_server, user = sql_admin, passwd = sql_pw, db = sql_db)
cursor = connection.cursor ()
cursor.execute("""call function(4)""")
data = cursor.fetchall()

frame = []
for row in data:
    frame.append(row)
return pd.DataFrame(frame)

cursor.close ()
# close the connection
connection.close ()