已解决:sqlalchemy.exc.ObjectNotExecutableError: Not an executable object‘......’的报错问题
in executeraise exc.ObjectNotExecutableError(statement) from errsqlalchemy.exc.ObjectNotExecutableError: Not an executable object: 'select 1'
文章共215字 · 阅读需要大约1分钟
一键AI生成摘要,助你高效阅读
问答
·
问题场景:
在flask框架中连接数据库,并测试数据库是否连接成功
使用了mysql数据库和pymysql驱动
问题描述
in execute
raise exc.ObjectNotExecutableError(statement) from err
sqlalchemy.exc.ObjectNotExecutableError: Not an executable object: 'select 1'
这是错误的相关代码,在conn.execute()方法处抛出了错误
db=SQLAlchemy(app)
with app.app_context():
with db.engine.connect() as conn:
result = conn.execute("select 1")
print(result.fetchone())
原因分析:
'select 1'不是一个可执行的对象
解决方案:
文本sql的执行,需要使用sqlalchemy中的text()方法处理字符串,再执行语句
1、导入 from sqlalchemy import text
2、关键部分修改如下:
result = conn.execute(text("select 1"))
更多推荐
已为社区贡献3条内容
所有评论(0)