mysql - 使用 sqlalchemy、mysql 和 pandas 读取框架

标签 mysql sqlalchemy pandas

我正在尝试连接到 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/

相关文章:

mysql - 如何导出Postgresql数据库,以便在MySQL中使用?

php - 如何避免在 php 中循环 sql 查询?

python - Flask SqlAlchemy MySql bool 类型总是返回 True

python - sqlalchemy 查询中的分组/排序依据

php - 使用空变量复制 mysql 行

基于事务计数的 MySql 数据透视表

python - 使用 SQLAlchemy 将表元数据从 sqlserver 传输到 postgresql

python - pandas 操作是否与 groupby 互补(相反)?

python - Pandas .DataFrame : find the index of the row whose value in a given column is closest to (but below) a specified value

python - 根据另一个数据框的内容向 pandas 数据框添加一列