Chinaunix首页 | 论坛 | 博客
  • 博客访问: 948467
  • 博文数量: 104
  • 博客积分: 1919
  • 博客等级: 上尉
  • 技术积分: 1910
  • 用 户 组: 普通用户
  • 注册时间: 2010-12-21 16:33
文章分类
文章存档

2016年(4)

2015年(1)

2014年(6)

2013年(16)

2012年(27)

2011年(49)

2010年(1)

分类: SQLite/嵌入式数据库

2011-08-10 16:28:02

/**********打开数据库************/
main()
{
    rc = sqlite3_open("entrance_guard.db",&db_recode_sqlite);
    if(rc)
    {
        fprintf(stderr, "Can't open database: %s\n", sqlite3_errmsg(db_recode_sqlite));
        printf("connot open database\n");
        sqlite3_close(db_recode_sqlite);
        exit(-1);   
    }   
    sqlite3_exec(db_recode_sqlite,"begin transaction",0,0,&errmsg); //开始一个事务
    for(i=0; i<5000; i++)
    {  
        sprintf(buf,"INSERT INTO \"MJ_Brush_Tab\" VALUES(%d,%d,%d,%d,%d,%d,%d);",i+1,i+1,0,0,0,0,0);
        sql=buf;
        sqlite3_exec( db_recode_sqlite, sql,0 ,0, &errmesg );
        if(errmesg!=NULL)
        {
            printf("err:%s\n", errmesg);
            sqlite3_free(errmesg);
            return 0;
        }
    }
    sqlite3_exec(db_recode_sqlite,"commit transaction",0,0,&errmsg);  //提交一个事务
    sqlite3_close(db_recode_sqlite);
}
使用事务的方法以后从原来插5000记录需要几十分钟缩减到只有22秒,大大提高了连续插入的速度^_^
阅读(2969) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

2011-08-17 16:06:00

211阳光生活网 大学生信用卡
http://www.211sun.com/
http://www.83193999.com/