Sqlite批量插入速度慢的解决方法【ThinkPHP】

使用ThinkPHP大批量转移数据一份,结果发现SQLite插入速度慢,几分钟才插入几千条,要了我的小命了。

后来在网上找到SQLite的插入机制,知道要在插入时使用事务,可以加速。

SQLite的事务请使用begin和commit,在TP中,可以直接使用startTrans和commit;

$db = M("userlist");
$db->startTrans();
foreach ($userList as $qq=>$userName)
{
	$data['id']	= NULL;
	$data['username']	= $userName;
	$data['psw']		= '';
	$data['email']		= '';
	$data['qq']			= $qq;
	$data['dateline']	= 0;
	$data['status']		= 0;
	
	$db	->data($data)
		->add();
}
$db->commit();

发表评论

电子邮件地址不会被公开。