Javascript 如何使用SQLite创建索引?

Javascript 如何使用SQLite创建索引?,javascript,database,sqlite,Javascript,Database,Sqlite,我正在使用,以满足我的数据需求。在我的数据库中,我存储了包含base64 imagedata和其他特征(如唱片集名称等)的表 现在我想使用SQLite索引优化数据检索,因为我注意到检索大量imagedata可能需要一些时间 但是,我不确定使用索引的列、类型(例如,我是否需要唯一索引或复合索引)以及如何处理查询?另见 我的设置如下: 表(列) 我的问题: 在本例中,我必须创建哪种类型的索引来优化性能 我是否只需要创建一次索引(创建表时) 我需要在哪些列和表上应用CREATE INDEX命令 也许

我正在使用,以满足我的数据需求。在我的数据库中,我存储了包含base64 imagedata和其他特征(如唱片集名称等)的表

现在我想使用SQLite索引优化数据检索,因为我注意到检索大量imagedata可能需要一些时间

但是,我不确定使用索引的列、类型(例如,我是否需要唯一索引或复合索引)以及如何处理查询?另见

我的设置如下:

表(列)

我的问题:

  • 在本例中,我必须创建哪种类型的索引来优化性能
  • 我是否只需要创建一次索引(创建表时)
  • 我需要在哪些列和表上应用
    CREATE INDEX
    命令
  • 也许可以解释一下它是如何工作的
Anex:数据检索

例如,当我想用
albumName=“foo”
检索所有ImagesData时,我使用以下语法:

SELECT Masterdata.id, ImagesData.data FROM Masterdata, ImagesData WHERE Masterdata.id = (?) AND ImagesData.id = Masterdata.id

另一种方法是
内部联接
,但我认为上面的方法也是一样的(正确与否?)。

有关解释,请参阅文档:。谢谢你。快速提问:仅在ID上创建索引就足够了吗?不需要在查询中包含其他语法?类似于从Masterdata中选择Masterdata.id、ImagesData.data、ImagesData,其中Masterdata.id=(?)和ImagesData.INDEXCOLUMN=Masterdata.INDEXCOLUMN
SELECT Masterdata.id, ImagesData.data FROM Masterdata, ImagesData WHERE Masterdata.id = (?) AND ImagesData.id = Masterdata.id