欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C++操作MySQL大量數(shù)據(jù)插入效率低下的解決方法

 更新時間:2014年07月25日 08:54:51   投稿:shichen2014  
這篇文章主要介紹了C++操作MySQL大量數(shù)據(jù)插入效率低下的解決方法,需要的朋友可以參考下

通常來說C++操作MySQL的時候,往Mysql中插入10000條簡單數(shù)據(jù),速度非常緩慢,居然要5分鐘左右,
而打開事務(wù)的話,一秒不到就搞定了!

具體實現(xiàn)代碼如下:

#include <iostream>
#include <winsock2.h>
#include <string>

#include "mysql.h"

#pragma comment(lib, "libmysql.lib");

using namespace std;

int main()
{
 MYSQL mysql;
 mysql_init(&mysql); // 初始化

 MYSQL *ConnStatus = mysql_real_connect(&mysql,"localhost","root","","sky",3306,0,0);
 if (ConnStatus == NULL)
 {
 // 連接失敗
 int i = mysql_errno(&mysql);
 string strError= mysql_error(&mysql);
 cout <<"Error info: "<<strError<<endl;

 return 0;
 }


 cout<<"Mysql Connected..."<<endl;
 
 string strsql;
 MYSQL_RES *result=NULL; // 數(shù)據(jù)結(jié)果集

 // 插入操作
 strsql = "insert into t1 values(2,'lyb')";

 mysql_query(&mysql,"START TRANSACTION"); // 開啟事務(wù), 如果沒有開啟事務(wù),那么效率會變得非常低下!

 for (int i=0; i<10000; i++)
 {
 mysql_query(&mysql,strsql.c_str());
 }

 mysql_query(&mysql,"COMMIT");   // 提交事務(wù)

 cout<<"insert end"<<endl;

 
 //釋放結(jié)果集 關(guān)閉數(shù)據(jù)庫
 mysql_free_result(result);
 mysql_close(&mysql);
 mysql_library_end();

 return 0;
}

總結(jié):

在針對大量數(shù)據(jù)的插入,更改等操作時,應(yīng)該開啟事務(wù),待一連串的操作結(jié)束之后,再提交事務(wù),可提高程序執(zhí)行效率。

相關(guān)文章

  • C語言實現(xiàn)俄羅斯方塊課程設(shè)計

    C語言實現(xiàn)俄羅斯方塊課程設(shè)計

    這篇文章主要為大家詳細(xì)介紹了C語言實現(xiàn)俄羅斯方塊課程設(shè)計,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • C++小知識:復(fù)制粘貼代碼千萬要小心

    C++小知識:復(fù)制粘貼代碼千萬要小心

    今天小編就為大家分享一篇關(guān)于C++小知識:復(fù)制粘貼代碼千萬要小心,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • 深入了解C++中map用法

    深入了解C++中map用法

    下面小編就為大家?guī)硪黄钊肓私釩++中map用法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨想過來看看吧
    2016-06-06
  • C++中求余運算符(%)示例詳解

    C++中求余運算符(%)示例詳解

    求余運算符“%”,二元運算符,具有左結(jié)合性。參與運算的量均為整型。求余運算的結(jié)果等于兩個數(shù)相除后的余數(shù)??此坪芎唵蔚倪\算符,卻也真要掌握用好它也不容易,這篇文章主要介紹了C++中求余運算符(%)的相關(guān)資料,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-01-01
  • c++常量詳解

    c++常量詳解

    常量是存放固定且不可變值的,一旦確定初始值則在程序其它地方不可改變, 所以const對象必須初始化。常量一般使用const關(guān)鍵字來修飾
    2017-06-06
  • C語言字符/字符串相關(guān)函數(shù)收藏大全

    C語言字符/字符串相關(guān)函數(shù)收藏大全

    這篇文章主要給大家介紹了關(guān)于C語言字符/字符串的相關(guān)函數(shù),文中通過示例代碼總結(jié)的非常詳細(xì),對大家學(xué)習(xí)或者使用C語言具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • C語言實現(xiàn)在數(shù)組A上有序合并數(shù)組B的方法

    C語言實現(xiàn)在數(shù)組A上有序合并數(shù)組B的方法

    這篇文章主要介紹了C語言實現(xiàn)在數(shù)組A上有序合并數(shù)組B的方法,包含了數(shù)組操作的完整實現(xiàn)過程以及相應(yīng)的代碼分析與改進(jìn),具有不錯的借鑒價值,需要的朋友可以參考下
    2014-09-09
  • C++ map與set封裝實現(xiàn)過程講解

    C++ map與set封裝實現(xiàn)過程講解

    set set是一種關(guān)聯(lián)式容器,下面這篇文章主要給大家介紹了關(guān)于C++中map和set使用的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用C++具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2023-03-03
  • C++字符串類的封裝你真的了解嗎

    C++字符串類的封裝你真的了解嗎

    這篇文章主要為大家詳細(xì)介紹了C++字符串類的封裝,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02
  • C++中雙冒號::的作用淺析

    C++中雙冒號::的作用淺析

    在C++中經(jīng)常使用雙冒號::,很多朋友不知道是什么意思,這篇文章主要介紹了C++中雙冒號::的作用,需要的朋友可以參考下
    2018-06-06

最新評論