• 5843阅读
  • 1回复

Qt使用Sqlite趣事 [复制链接]

上一主题 下一主题
离线jorneyr
 

只看楼主 倒序阅读 楼主  发表于: 2009-08-08
— 本帖被 XChinux 从 General Qt Programming 移动到本区(2011-01-02) —
新建一表, 就只有两列:
create table t(
    id integer primary key autoincrement,
    name text
);

1: 不使用事务, 向sqlite3里插入1万条数据, 大概需要22秒.

2: 使用事务, 向sqlite3里插入10万条数据(这里不是1万条, 而是10万条):
  2.1:
    QSqlDatabase db = DBUtil::getInstance().getDatabase();
    db.transaction();
    QSqlQuery query(db);
    for (int i = 0; i < count; ++i) {
        query.exec("INSERT INTO t(name) VALUES('biao')");
    }
    db.commit();
    大概需要2900毫秒.

    2.2:
    QSqlDatabase db = DBUtil::getInstance().getDatabase();
    db.transaction();
    for (int i = 0; i < count; ++i) {
        QSqlQuery query("INSERT INTO t(name) VALUES('biao')", db);
    }
    db.commit();
    大概需要3200毫秒.

看来事务在大量数据操作的时候还是不错的.
离线nmiirq

只看该作者 1楼 发表于: 2009-08-08
嗯,不错!顶楼主!
快速回复
限100 字节
 
上一个 下一个