gpt4 book ai didi

java - 插入到 Sqlite 很慢

转载 作者:太空宇宙 更新时间:2023-11-04 06:25:46 24 4
gpt4 key购买 nike

我是数据库新手。

我想向 sqlite 数据库插入 22000 个单词,但需要很长时间才能完成

for (int i=0;i<s.size();i++){               
String sql = "INSERT INTO WORD (word) VALUES ("+"'"+s.get(i)+"'"+");";
statement.executeUpdate(sql);
}

表名称为 WORD,字段名称为 word(即 String )这里 s 是一个 arrylist 并且 s.get(i) 返回一个字符串...我已经建立了连接并尝试更新表。

速度非常慢。我做错了什么?

最佳答案

速度很慢,因为您向数据库发出了 22000 个查询。您应该分批插入。这将解决问题。即使单次插入需要 10 毫秒,总时间也只有 3.5 分钟!!

批量为 2 的简单插入查询将如下所示

"INSERT INTO WORD (word) VALUES ("+"'"+s.get(i)+"'"+"), ("+"'"+s.get(i+1)+"'"+");";

这将使时间减少一半。现在您必须以编程方式插入更多这些值。

关于java - 插入到 Sqlite 很慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26818801/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com