我试图远程连接到运行存储过程的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)
答案 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 ()