我正在尝试使用sqlite(sqlite3)来存储数十万条记录的项目(想要sqlite,所以程序的用户不必运行[my] sql server).
我有时需要更新数十万条记录来输入左边的值(它们是分层的),但已经找到了标准
update table set left_value = 4, right_value = 5 where id = 12340;
非常慢 我已经尝试过每隔一千左右
begin; .... update... update table set left_value = 4, right_value = 5 where id = 12340; update... .... commit;
但又一次,很慢.奇怪,因为当我填充数十万(带插入)时,它会在几秒钟内完成.
我目前正试图在将它移动到C++实现之前测试python中的速度(缓慢在命令行和python中),但是现在这种方法很慢,我需要找到一个新的解决方案,除非我正在做有问题.思考?(将采用可移植的SQLite的开源替代方案)
创建索引 table.id
create index table_id_index on table(id)