【问题标题】:InvalidRequestError: Could not evaluate current criteria in Python: "Cannot evaluate Select". Specify 'fetch' or False for the synchronize_sessionInvalidRequestError:无法在 Python 中评估当前标准:“无法评估 Select”。为 synchronize_session 指定 'fetch' 或 False
【发布时间】:2021-09-06 09:50:32
【问题描述】:

尝试运行此代码时出现此错误:

query = delete(BannerLocalization).where(
        BannerLocalization.locale == locale,
        BannerLocalization.id == pk,
        BannerLocalization.banner_id.in_(
            select(
                Banner.id
            ).join(
                BannerLocalization
            ).where(
                BannerLocalization.locale == locale,
                BannerLocalization.id == pk,
                Banner.banner_type == BannerTypesEnum.EVENT
            )
        )
    )

sqlalchemy.exc.InvalidRequestError:无法在 Python 中评估当前标准:“无法评估 Select”。为 synchronize_session 执行选项指定 'fetch' 或 False。

有人知道怎么回事吗?

【问题讨论】:

标签: python sql python-3.x sqlalchemy fastapi


【解决方案1】:

我已经解决了这个问题:

设置execution_options=immutabledict({"synchronize_session": 'fetch'})session.execute

工作变体如下所示:

await session.execute(query, execution_options=immutabledict({"synchronize_session": 'fetch'}))```

【讨论】:

    猜你喜欢
    • 2015-03-10
    • 2017-04-26
    • 2015-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多