如果使用长查询,pymysql returns 错误
pymysql returns error if long query is used
使用以下代码,如果我使用长查询,则会出现错误。我提供的查询大小有限制吗?
抱歉,我无法分享我传递的确切查询。如果在 MySQL workbench 中给出相同的查询,则数据将正确返回。如有任何建议,我们将不胜感激。
我的代码:
import pymysql.cursors
import pymysql
import pandas as pd
connection = pymysql.connect(host = host,
user = user,
db = db,
password = password,
port = port)
def sql_to_df(sql_query):
df = pd.read_sql(sql_query, connection)
connection.close()
return df
query = '''long query'''
#use pandas to pass SQL query
df = sql_to_df(query)
df.head()
返回此错误:
497 sql, index_col=index_col, params=params,
498 coerce_float=coerce_float, parse_dates=parse_dates,
--> 499 chunksize=chunksize)
500
501 try:
1602 if chunksize is not None:
TypeError: 'NoneType' object is not iterable
def sql_to_df(sql_query):
df = pd.read_sql(sql_query, connection)
connection.close()
return df
query = '''long query'''
#use pandas to pass SQL query
df = sql_to_df(query)
df.head()
你只需要下面..
df = pd.read_sql(query, connection)
connection.close()
df.head()
使用不同的工具查询数据库 (mysql.connector)。我能够找到对该错误的更多见解。
DatabaseError: Execution failed on sql 'SET SESSION group_concat_max_len = 1000000;
从我的查询中删除它后它起作用了。
使用以下代码,如果我使用长查询,则会出现错误。我提供的查询大小有限制吗?
抱歉,我无法分享我传递的确切查询。如果在 MySQL workbench 中给出相同的查询,则数据将正确返回。如有任何建议,我们将不胜感激。
我的代码:
import pymysql.cursors
import pymysql
import pandas as pd
connection = pymysql.connect(host = host,
user = user,
db = db,
password = password,
port = port)
def sql_to_df(sql_query):
df = pd.read_sql(sql_query, connection)
connection.close()
return df
query = '''long query'''
#use pandas to pass SQL query
df = sql_to_df(query)
df.head()
返回此错误:
497 sql, index_col=index_col, params=params,
498 coerce_float=coerce_float, parse_dates=parse_dates,
--> 499 chunksize=chunksize)
500
501 try:
1602 if chunksize is not None:
TypeError: 'NoneType' object is not iterable
def sql_to_df(sql_query):
df = pd.read_sql(sql_query, connection)
connection.close()
return df
query = '''long query'''
#use pandas to pass SQL query
df = sql_to_df(query)
df.head()
你只需要下面..
df = pd.read_sql(query, connection)
connection.close()
df.head()
使用不同的工具查询数据库 (mysql.connector)。我能够找到对该错误的更多见解。
DatabaseError: Execution failed on sql 'SET SESSION group_concat_max_len = 1000000;
从我的查询中删除它后它起作用了。