我想尽可能快地将大量插入(比方说几百万)插入数据库.由于我从CI调用,认为在API中可能存在执行此操作的快捷方式.我不禁觉得从数据创建字符串并让SQLite在一次调用中解析字符串的效率低于它可能的效率.
有没有办法插入数据而不必创建SQL字符串?准备好的陈述是唯一的出路吗?
我正在寻找以特定于C的方式以最有效的方式插入数据,而不是一般的数据库提示
在代码中启动事务,并且所有插入都将在提交中写入磁盘之前在内存中发生.(根据您可用的内存量以及插入的数据量,您可能需要对此进行分块)这将是您将看到的最大性能提升.
否则,如果它插入到同一个表中,则在每次插入后将数据一次重新绑定到同一语句,以防止文本处理开销.但是,与交易相比,这将是相对较小的.您的大部分插入时间都在磁盘写入中...