不在运算符中不使用唯一索引

Not in operator not working with unique index

在我的 android 应用程序中,我试图在 table 的升级中创建唯一索引,但我想排除一些以前创建的重复 ID,因此我创建了 sql 这样查询

CREATE UNIQUE INDEX indexname ON tblName(formid, formno) WHERE ID NOT IN (36, 37)

但它给我错误

09-21 19:15:51.378: W/System.err(31454): java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=2, result=2, data=Intent { (has extras) }} to activity {a.b.c/a.b.c.MainActivity}: android.database.sqlite.SQLiteException: near "WHERE": syntax error (code 1): , while compiling: CREATE UNIQUE INDEX indexname ON tblName(formid, formno) WHERE ID NOT IN (36, 37)

id的数据类型为整数。

Partial indexes are supported since SQLite 3.8.0.

只有在 Android API 21 级(Lollipop)或更高级别时才会 available