Java 当超过某个批处理大小时,Json文件没有完全插入SQLite数据库

Java 当超过某个批处理大小时,Json文件没有完全插入SQLite数据库,java,android,json,sqlite,Java,Android,Json,Sqlite,对于这个android项目,我将从SQL Server中获取大约45个表,并将其转换为JSON文件,插入到手机上的本地数据库中。唯一的问题是,这45个表中有一个有30000多条记录,插入时间增加了几分钟 我已经尝试将批量大小(一次所需的行数)增加到5000行,但前面提到的表中的大部分数据并没有一直插入。批量大小为3750可以正常工作,但一旦达到4100,我就会经历数据丢失。我的默认批量大小是250。。。对此有逻辑上的解释吗 合乎逻辑的解释是,在一个表中插入30000条记录+移动数据库中其他44个

对于这个android项目,我将从SQL Server中获取大约45个表,并将其转换为JSON文件,插入到手机上的本地数据库中。唯一的问题是,这45个表中有一个有30000多条记录,插入时间增加了几分钟


我已经尝试将批量大小(一次所需的行数)增加到5000行,但前面提到的表中的大部分数据并没有一直插入。批量大小为3750可以正常工作,但一旦达到4100,我就会经历数据丢失。我的默认批量大小是250。。。对此有逻辑上的解释吗

合乎逻辑的解释是,在一个表中插入30000条记录+移动数据库中其他44个表中的行并不是最好的做法。试着将这个巨大的插入操作拆分成许多小块,可能您遇到了内存限制,而SQLite本身并没有这样的限制。这可能是代码中的错误。FWIW允许字符串或blob中包含10^9字节,表中包含2000列,SQL语句中包含10^6字节,联接中包含64个表,等等。