The SQLITE_LIMIT_COMPOUND_SELECT limit SQLITE_LIMIT_COMPOUND_SELECT not a means of preventing memory overflow (at least for Android systems), but simply a health check. Therefore, it is highly unlikely that the provider will reduce it by default, so 500 should be safe.
In addition, as the number of inserted records in one command becomes larger, incremental acceleration will decrease; for example, accelerating the transition from 5 to 50 records will be more than accelerating the transition from 50 to 500. Therefore, just using 50 should not hurt much.
Another way to speed up repeated executions is to use prepared statements with SQLiteDatabase.compileStatement .
source share