使用Python2.6、pandas和SQLHemy—连接到SQLite;不可能的任务?
我正试图在我学校的计算机集群上部署地理空间联合脚本。不幸的是,他们有Python2.6(Cloudera的标准),我必须相应地重新编写代码 从_sql()读取pandas.from需要建立SQLAlchemy连接。但是,他们提出的方法在python 2.6中不起作用:使用Python2.6、pandas和SQLHemy—连接到SQLite;不可能的任务?,python,sqlite,pandas,sqlalchemy,python-2.6,Python,Sqlite,Pandas,Sqlalchemy,Python 2.6,我正试图在我学校的计算机集群上部署地理空间联合脚本。不幸的是,他们有Python2.6(Cloudera的标准),我必须相应地重新编写代码 从_sql()读取pandas.from需要建立SQLAlchemy连接。但是,他们提出的方法在python 2.6中不起作用: engine = create_engine('sqlite:///%s' % path) with engine.connect() as conn, conn.begin(): chunks = pd.read_sq
engine = create_engine('sqlite:///%s' % path)
with engine.connect() as conn, conn.begin():
chunks = pd.read_sql_table('tweets', conn, columns=columns, chunksize=50)
然而,python 2.6似乎不喜欢“with”语句,也不喜欢“with…”。。。作为……,…:'。所以我不得不稍微修改代码:
conn = engine.connect()
conn.begin()
chunks = pd.read_sql_table('tweets', conn, columns=columns, chunksize=50)
conn.close()
然而,这给我带来了另一个错误,非常奇怪:
raise NotImplementedError("read_sql_table only supported for "
NotImplementedError: read_sql_table only supported for SQLAlchemy connectable.
我如何解决这个问题呢?难道你不能像这样嵌套上下文管理器吗:
with engine.connect() as conn:
with conn.begin():
chunks = ...
在2.7中为多个上下文管理器添加了语法,这是真的,但在2.6中您始终可以解决它。这一点很好,但它还打印出“'Connection'对象没有属性'exit',在本例中,因此我无法t@Casy_fill我认为这意味着你正在使用一个可笑的SQLAlchemy旧版本(即。