Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/186.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 主键更新后的Sqlite索引_Android_Sql_Sqlite - Fatal编程技术网

Android 主键更新后的Sqlite索引

Android 主键更新后的Sqlite索引,android,sql,sqlite,Android,Sql,Sqlite,为了优化我的查询,我创建了一些索引,但是如果我更新主键会发生什么呢。在这种情况下仍然值得使用索引吗? 我正在阅读sqlite中索引的主要概念,但没有发现任何关于这方面的信息 表结构: rowid | col1 | col2 | col3| col4 | col5 索引: CREATE INDEX Idx1 ON my_tab(col1); CREATE INDEX Idx2 ON my_tab(col1,col4); 更改表数据时,所有索引都将自动更新。这可能会稍微降低UPDATE语句的速度

为了优化我的查询,我创建了一些索引,但是如果我更新主键会发生什么呢。在这种情况下仍然值得使用索引吗? 我正在阅读sqlite中索引的主要概念,但没有发现任何关于这方面的信息

表结构:

rowid | col1 | col2 | col3| col4 | col5
索引:

CREATE INDEX Idx1 ON my_tab(col1);
CREATE INDEX Idx2 ON my_tab(col1,col4);

更改表数据时,所有索引都将自动更新。这可能会稍微降低UPDATE语句的速度,但查询的性能不会改变


请注意,
Idx1
是多余的,应该删除。

您只需要创建一次索引。数据库将记住带有索引的列,并将随着表不断更改索引。您是否可以从官方sqlite docu或其他文件中指向某个源?