mysql - 在 Flask App 中从 SQLite 转换为 MySQL 时出现 1064 错误
问题描述
我正在开发一个 Flask 应用程序,并将 SQlite 转换为 MySQL,一直使用 SQLAlchemy 作为 ORM。曾经有效的查询现在抛出以下错误。有人可以发现 SQL 的问题,所以我可以追溯到 SQLAlchemy 代码吗?
sqlalchemy.exc.ProgrammingError: (mysql.connector.errors.ProgrammingError) 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '1' at line 7
[SQL: SELECT user_post.post_id AS user_post_post_id
FROM user_post
WHERE user_post.feed_id IN (SELECT feed.id
FROM feed
WHERE EXISTS (SELECT 1
FROM feed_folder, folder
WHERE feed.id = feed_folder.feed_id AND folder.id = feed_folder.folder_id AND folder.id = %(id_1)s)) AND user_post.user_id IS %(user_id_1)s]
[parameters: {'id_1': 1, 'user_id_1': 1}]
来自
feed_list = db.session.query(Feed.id).filter(Feed.folders.any(id=folder)).subquery()
post_list = db.session.query(UserPost.post_id).filter(UserPost.feed_id.in_(feed_list), UserPost.user_id.is_(user.id)).all()
解决方案
推荐阅读
- google-apps-script - 显示表格的第一个非空白单元格
- python - 删除存在空值的列的重复项
- git - git:无法减小 .git 文件夹大小
- swift - 运行循环时视图不实时更新
- xamarin.forms - Xamarin 表单中的人性化本地化问题
- javascript - 如何在javascript中解决此代码?将具有相同值的不同对象组合成单个数组
- asp.net-core - 我可以在 .NET 核心中使用 httpclient 发送 GraphQL 查询吗?
- c++ - “无法打开包含文件:'vulkan/vulkan.h':没有这样的文件或目录”当静态库作为 VS 2019 中解决方案的一部分构建时
- python - 如何将输入结果更改为整数?
- c# - Asp.Net 5/Core app.UseExceptionHandler() 不工作