我正在尝试连接到 mysql 数据库, 与选项 1 配合良好:
from sqlalchemy import create_engine
engine = create_engine('mysql://root:root@localhost/lend', echo=True)
cnx = engine.connect()
x = cnx.execute("SELECT * FROM user")
但在这里分解:
from pandas.io import sql
xx = sql.read_frame("SELECT * FROM user", cnx)
cnx.close()
与
AttributeError: 'Connection' 对象没有属性 'rollback'
最佳答案
您需要有一个原始数据库连接,而不是 Connection
的一个实例.为了获得它,请调用 engine.raw_connection()
或 engine.connect().connection
:
from pandas.io import sql
#cnx = engine.connect().connection # option-1
cnx = engine.raw_connection() # option-2
xx = sql.read_frame("SELECT * FROM user", cnx)
cnx.close()
关于mysql - 使用 sqlalchemy、mysql 和 pandas 读取框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20401392/