理论上简单的sql语句:
CREATE UNIQUE INDEX i1 ON MyTable (col1, col2) WHERE col3 IS NULL;
但是在尝试执行语句时,我得到:
android.database.sqlite.SQLiteException: near "WHERE": syntax error: , while compiling: CREATE UNIQUE INDEX
为什么????有没有解决方法?
解决方法:
我没有在android中使用索引,但是在sqlite changelog中出现部分索引在SQLite 3.8.0中可用.
我认为大多数Android设备(4.3和之前的确定),使用早期版本的SQLite.在终端模拟器或adb shell中,使用sqlite3 –version查看您的设备正在运行的SQLite版本.如果它在3.8.0之前,则它不支持部分索引,您将不得不关闭WHERE子句.
实际上,您应该忽略WHERE子句,因为许多用户在发布时不会使用适当的sqlite版本来使用您的应用程序.反正没有必要.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。