如何解决在 Python 中创建“引擎”对象后如何读取/查询 SQL 表? pd.read_sql
我使用的是 Python 3.7,我对 SQL 和 Python 不是很熟悉,我有下面的代码来创建 SQL 引擎:
mysql_engine = sqlalchemy.create_engine('mysql://xxxxxx')
然后我有一个预定义的 SQL 查询,这是一个简化版本:(我在 MySQL Workbench 中测试了这个查询并且它工作正常)
example_query = '''
select
a.date
from
abc.xyz a
'''
我希望能够从表中读取/查询,我尝试过:
cursor = mysql_engine.cursor()
cursor.execute(example_query)
但我收到错误 AttributeError: 'Engine' object has no attribute 'cursor'
,也许我可以使用 pandas
?有人可以帮忙吗,谢谢。
解决方法
pd.read_sql
第二个参数可以接受 sqlalchemy 引擎。
来自Docs
con:SQLAlchemy 可连接、str 或 sqlite3 连接使用 SQLAlchemy 可以使用该库支持的任何数据库。如果一个 DBAPI2 对象,仅支持 sqlite3。用户对发动机负责 SQLAlchemy 可连接的处理和连接关闭;字符串 连接会自动关闭。
pd.read_sql(example_query,mysql_engine)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。