sqlite慎用for循环+or链接

最近使用到了SQLite数据库,根据需求逻辑,我使用for循环中拼接or的方式拼接sql,出现下面的错误

sqlite expression tree is too large (maximum depth 1000)

本以为是sql语句太长了。我就试图将sql语句减少一点,发现还是不行。

就在网上搜了一下,找到了报错的原因:

当链接的or次数达到1000,就抛异常。

需要用in链接来替代同维度的链接,防止在拼接sql的时候报错。

posted @ 2020-08-19 09:01  cchilei  阅读(793)  评论(0编辑  收藏  举报