【发布时间】:2015-01-14 06:26:03
【问题描述】:
我有两个处于一对多关系的实体。在某些情况下,实体之一具有超过 999 个子实体。我想删除实体及其子实体,但遇到 sqlite 最大 sql 变量的问题:
connection.execute(child.delete().where(child.c.parent_id == parent_id))
connection.execute(parent.delete().where(parent.c.id == parent_id))
sqlalchemy.exc.OperationalError:
OperationalError: (OperationalError) too many SQL variables u'DELETE FROM child WHERE child.parent_id IN (?,?...
我发现 sqlite 中的 maxium sql 变量是 999,所以这就是我的问题所在。我在另一个问题中阅读了答案,这是一个建模问题 (https://stackoverflow.com/a/8433514/931325),但我不知道如何以不同的方式对数据建模。
我有什么办法来解决这个问题?
【问题讨论】:
-
你的 SQL 引擎是什么? (mysql, sqlite, ...)
-
它的 SQLite。我不认为这是其他引擎的问题。
标签: sqlite sqlalchemy