pandas to_sql似乎关闭Linux上的sqlalchemy连接 - bug或用户错误?

时间:2016-06-09 15:23:44

标签: python linux sqlite pandas sqlalchemy

我有这样的事情:

import sqlalchemy
import pandas as pd
test_db_connection = 'sqlite://'
test_table = 'TestTable'
test_index_column = 'IndexColumn'
test_columns = [test_index_column, 'ValueColumn']
tuples = [("M101", "NCL2010H")]
df = pd.DataFrame(tuples, columns = test_columns)

engine = sqlalchemy.create_engine(test_db_connection)
with engine.connect() as conn:
    df.to_sql(test_table, conn)
    res = pd.read_sql_table(test_table, conn, index_col=test_index_column)

这一切在Windows上运行正常(python 3.3,python 3.5,pandas 0.18.0,pandas 0.18.1,SQLAlchemy == 1.0.12)但是当我在Linux上运行它时(centOS 7,Python 3.3.2,pandas) == 0.18.1,SQLAlchemy == 0.7.9)我在df.to_sql()语句后得到一个连接已经关闭。

我还尝试删除with语句并使用显式conn.close(),以及Sqlite的本地文件(test_db_connection ='sqlite:///temp.db'),结果相同。

这是我做错了什么,还是pandas / sqlalchemy / sqlite的问题?

0 个答案:

没有答案