当我通过sqlalchemy.create_engine(uri,server_side_cursors = True)创建引擎时,无法在服务器模式下重用该引擎,如下所示:
def test_mysql_search():
uri = Const.mysql_URI
engine = sqla.create_engine(uri, server_side_cursors=True)
sql = "select 1 from z_voucher"
df_g = pd.read_sql(sql, engine, chunksize=1)
df = next(df_g)
print(df)
df = next(df_g)
print(df)
print('--------------------------------------------')
sql2 = 'select * from AUDIT_BALANCE'
df2 = pd.read_sql(sql2, engine, chunksize=1)
df = next(df2)
print(df)
df = next(df2)
print(df)
当我在上方或下方执行单独的截止线时,可能会很好。但是,当我全部执行时,它无法重用服务器模式。我应该关闭服务器端游标,但不关闭它。 我的数据库是Mysql,驱动程序是pymysql。