批量數據數據庫操作

      網友投稿 726 2022-05-28

      數據庫優化法則歸納為5個層次:

      1、 減少數據訪問(減少磁盤訪問)

      2、 返回更少數據(減少網絡傳輸或磁盤訪問)

      3、 減少交互次數(減少網絡傳輸)

      4、 減少服務器CPU開銷(減少CPU及內存開銷)

      5、 利用更多資源(增加資源)

      數據批量處理一般有兩種情況(針對減少磁盤訪問):

      1、數據從一個數據庫表A遷移到另一個數據庫表B,這種情況可以每次取一定數量(例如:5條)進行批量插入。

      批量數據數據庫操作

      語句如下:

      在insert中寫多個value

      INSERT INTO table(field1,field2,field3)VALUES(‘a’,’b’,’c’),(‘a’,’b’,’c’),(‘a’,’b’,’c’),(‘a’,’b’,’c’),(‘a’,’b’,’c’);

      2、數據是實時數據,比如服務器接收到的數據,數據可能在短時間有大量數據上傳,也可能長時間沒有,數據上傳太快對與服務器的交互性能有較大的要求,如果可以批量插入,減少訪問數據庫,一次存入較多的數據,來提高服務器性能;

      可以用vector或者其他合適的數據結構來臨時存儲數據,當達到預定設置的閾值時進行一次數據處理,比如vector.size>=5;

      實現如下:

      #include

      typedef struct BIGINSERT

      {

      int strBooknumber;

      CString strLocation;

      }_biginsert_info;

      typedef std::vector<_biginsert_info> Vecbigdatainsert;

      _batch_info bigdatainsert;

      Vecbigdatainsert vectordata;

      Bigdatainsert.strBooknumber = //上傳的數據

      Bigdatainsert.strLocation = //上傳的數據

      //存入容器中

      vectordata.push_back(Bigdatainsert);

      int itSize = vectordata.size();

      if(itSize >= 5)

      {

      int j = 0;

      CString str1;

      str1.Format("%s","(’%d’,’%s’)");

      CString cstrdata[100];

      CString strTemp = “”;

      for(Vecbigdatainsert::iterator it = vectordata.begin();it !=vectordata.end();

      it++)

      1

      {

      cstrdata[j].Format("('%d','%s')",it->strBooknumber,it->strLocation); CString csData = cstrdata[j]; if(j == itSize-1)

      1

      2

      3

      4

      5

      6

      {

      strinsert+= csData; break; } else { strinsert+= csData; strinsert+=","; j++; }

      1

      2

      3

      4

      5

      6

      7

      8

      9

      10

      11

      12

      13

      14

      15

      16

      17

      }

      //釋放

      vectordata.swap(vector<_biginsert_info>());

      INSERT INTO table (field1,field2) VALUES %s",strinsert);

      數據庫

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:Linux掛載持有系統鏡像光驅
      下一篇:Windows主機如何玩轉虛擬機Linux安裝,看這一篇就夠了
      相關文章
      亚洲AV无码专区日韩| 亚洲成A人片在线观看中文| 亚洲国产精华液网站w| 亚洲国产精品日韩专区AV| 国产午夜亚洲精品不卡电影| 亚洲欧美乱色情图片| 在线观看亚洲AV日韩A∨| 欧洲 亚洲 国产图片综合| 亚洲欧洲日韩极速播放| 一本色道久久综合亚洲精品蜜桃冫| 亚洲一区在线免费观看| 亚洲影视自拍揄拍愉拍| www国产亚洲精品久久久日本| 亚洲国产精品成人综合色在线| 亚洲成在人线aⅴ免费毛片 | 亚洲国产精品无码一线岛国| 亚洲色偷偷综合亚洲AVYP| 日韩va亚洲va欧洲va国产| 亚洲AV综合色区无码另类小说| 亚洲av无码一区二区三区乱子伦 | 亚洲高清视频在线观看| 久久久无码精品亚洲日韩京东传媒 | 日韩精品成人亚洲专区| AV在线亚洲男人的天堂| 亚洲日本一区二区三区在线 | 亚洲中文字幕久久久一区| 亚洲欧美国产日韩av野草社区| 亚洲av永久中文无码精品综合 | WWW亚洲色大成网络.COM | 亚洲妇女水蜜桃av网网站| 精品国产_亚洲人成在线| 99亚洲精品卡2卡三卡4卡2卡| 在线观看国产一区亚洲bd| 久久久久久亚洲精品不卡| 国产国拍亚洲精品mv在线观看| 亚洲成人精品久久| 亚洲欧洲国产综合| 亚洲色成人四虎在线观看| jjzz亚洲亚洲女人| 亚洲狠狠婷婷综合久久久久| 久久亚洲AV成人无码国产|