SQLITE_MAX_COMPOUND_SELECT limit cannot be raised at run time ,
So, you need to divide your inserts into batches of 500 rows. This will be more efficient than inserting one row for each query. For instance,
BEGIN TRANSACTION INSERT INTO tablename (data1,data2) VALUES ("data1","data2") INSERT INTO tablename (data1,data2) VALUES ("data1","data2") INSERT INTO tablename (data1,data2) VALUES ("data1","data2") ... END TRANSACTION
Also see Insert multiple rows in SQLite
source share