Sqlite批量插入数据响应速度慢的解决方法

在使用Sqlite大批量的插入数据时间,发现SQLITE的响应数据相当慢,不管是PHP还是.NET都是如此。后来在网上找到SQLite的插入机制,知道要在插入时使用事务,可以加速。

SQLite的事务请使用begin和commit,以下以PHP为例(使用的框架是ThinkPHP),在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();
posted @ 2012-07-10 16:34  码农神说  阅读(804)  评论(0编辑  收藏  举报