MySQL批量插入數據的幾種方式

? ? ? ? 最近在項目中遇到了批量插入數據的一些問題,一般圖省事都是利用mybatis或mybatis-plus的saveBatch方法,但這次因為數據過多,出現了一系列的問題,只能手動處理,接下來分享下對于數據量比較大的批量插入,可能遇到的幾個問題和處理方式:

1、saveBatch方法默認的是插入1000條數據,如果你的數據量超過1000條,還是想用這個方法的話,就需要指定數量,例如:

List<Student> list = new ArrayList<>();
//向集合中放入5000條數據, 根據實際情況來
// ...super.saveBatch(list, list.size())

2、因為saveBatch方法其實執行的還是循環insert插入,并且在insert語句中會包含表字段,如果你的表相對復雜,數據量過大的情況下可能導致超過MySQL允許的傳輸上限,具體的值我忘了,有興趣可以查詢了解下,導致發生異常回滾,這時候,你還是懶得寫sql,那么就只能分批處理了,按你自己的情況制定合理的批數據量,然后進行如下操作:

List<Student> list = new ArrayList<>();
//向集合中放入5000條數據, 根據實際情況來
// ...int batchSize = 1000;
int size = list.size();
for (int i = 0; i < size; i += batchSize) {int end = Math.min(i + batchSize, size);List<Student> subList = list.subList(i, end);super.saveBatch(subList);
}

3、上邊都是一些懶人做法,最佳的方式還是自己寫xml的insert語句,但是也要注意數據量,特別巨大的時候,還是要分批進行,這種情況一般少一些,大部分項目場景遇不到

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/43625.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/43625.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/43625.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

python的魔法方法

python類中的self是什么&#xff1f; 對象的方法都會有一個self參數&#xff0c;類比于c&#xff0c;self就相當于c的this指針。 由一個類可以生成無數個對象&#xff0c;當一個對象的方法被調用時&#xff0c;對象會講自身的引用作為第一個參數傳給該方法&#xff0c;那么pyt…

CTF-PWN-kernel-棧溢出(retuser rop pt_regs ret2dir)

文章目錄 參考qwb2018 core檢查逆向調試打包上傳測試腳本retuserkernel ropinit_credcommit_creds( prepare_kernel_cred(0) )開啟KPTI利用swapgs_restore_regs_and_return_to_usermode開啟KPTI利用SIGSEGVrop設置CR3寄存器再按照沒有KPTI返回 kernel rop ret2userpt_regs 構造…

2024年浙江省高考分數一分一段數據可視化

下圖根據 2024 年浙江高考一分一段表繪制&#xff0c;可以看到&#xff0c;競爭最激烈的分數區間在620分到480分之間。 不過&#xff0c;浙江是考兩次取最大&#xff0c;不是很有代表性。看看湖北的數據&#xff0c;580分到400分的區段都很卷。另外&#xff0c;從這個圖也可以…

RTOS系統 -- FreeRTOS之任務調度

FreeRTOS中的任務調度 背景介紹 FreeRTOS是一種輕量級的實時操作系統&#xff0c;被廣泛應用于嵌入式系統中。它提供了多任務管理功能&#xff0c;包括任務創建、任務調度和任務切換。FreeRTOS的調度器根據任務的優先級和狀態自動調度任務&#xff0c;確保系統資源的有效利用…

獨立站優勢及吸引力分析

隨著全球化貿易的不斷深入&#xff0c;越來越多的廠商開始尋求更廣闊的市場和更高效的銷售渠道。獨立站作為企業自有的電商網站&#xff0c;正逐漸成為海外貿易的新寵。本文將分析獨立站的優勢及其對廠商的吸引力&#xff0c;鼓勵廠商以建立獨立站的方式出海。 一、獨立站的定義…

el-image放大圖片功能

1.需求&#xff1a;點擊圖片后放大圖片 html代碼&#xff1a; <el-imagestyle"width: 100px; height: 100px":src"baseUrl item.id":zoom-rate"1.2":max-scale"7":min-scale"0.2":preview-src-list"srcList"…

Xilinx FPGA UltraScale SelectIO 接口邏輯資源

目錄 1. 簡介 2. Bank Overview 2.1 Diagram 2.2 IOB 2.3 Slice 2.4 Byte Group 2.5 I/O bank 示例 2.6 Pin Definition 2.7 數字控制阻抗(DCI) 2.8 SelectIO 管腳供電電壓 2.8.1 VCCO 2.8.2 VREF 2.8.3 VCCAUX 2.8.4 VCCAUX_IO 2.8.5 VCCINT_IO 3. 總結 1. 簡介…

Vue利用遞歸的方法,根據id獲取對應的字段名(樹形數據)

樹形數據源 options:[{ancestors: "0",code: "99",id: "99",name: "測試部門1",parentId: "0",children: [{ancestors: "0,99",code: "test",id: "1720269456426344449",name: "測試子部…

【國潮】軟件本土化探索

文章目錄 一、國產-操作系統銀河麒麟&#xff08;Kylin&#xff09;操作系統華為鴻蒙系統&#xff08;HarmonyOS&#xff09;統信UOS深度Deepin 二、國產-服務器華為鯤鵬&#xff1a;飛騰&#xff1a;海光&#xff1a;兆芯&#xff1a;龍芯&#xff1a;申威&#xff1a; 三、國…

Redis學習 - 基礎篇

Redis學習 - 基礎篇 一. 簡介 Redis 是一個高性能的key-value數據庫&#xff0c;常用的數據類型如下&#xff1a;string&#xff0c;list&#xff0c;set&#xff0c;zset&#xff0c;hash 二. 安裝 Widows和Linux下如何安裝Redis-CSDN博客 三. 常用命令 配置及數據庫操作…

《信息技術與信息化 》是什么級別的期刊?是正規期刊嗎?能評職稱嗎?

問題解答 問&#xff1a;《信息技術與信息化 》是不是核心期刊&#xff1f; 答&#xff1a;不是&#xff0c;是知網收錄的第一批認定學術期刊。 問&#xff1a;《信息技術與信息化 》級別&#xff1f; 答&#xff1a;省級。主管單位&#xff1a;山東省科學技術協會 主辦單…

國內磁性器件核心企業『云路新能源』攜手企企通正式啟動SRM項目,供應鏈競爭力再上新臺階

近日&#xff0c;珠海黎明云路新能源科技有限公司&#xff08;以下簡稱“云路新能源”&#xff09;攜手企企通啟動SRM數字化采購供應鏈管理項目&#xff0c;雙方相關負責人與項目組成員出席本次啟動會。 本次采購數字化項目建設&#xff0c;企企通將助力云路新能源實現采購全場…

智能無人數字直播間 打造24小時的無人直播間源碼系統 帶網站的安裝代碼包以及搭建教程

系統概述 智能無人數字直播間系統是一種基于人工智能技術的軟件工具&#xff0c;它結合了高精度掃描建模、自動化控制、多模態生成等多項先進技術&#xff0c;能夠實現對真實人物的高度仿真&#xff0c;并自主執行各類直播任務。該系統不僅支持24小時不間斷直播&#xff0c;還…

微信小程序引入自定義子組件報錯,在 C:/Users/***/WeChatProjects/miniprogram-1/components/路徑下***

使用原生小程序開發時候&#xff0c;會報下面的錯誤&#xff0c; [ pages/button/button.json 文件內容錯誤] pages/button/button.json: [“usingComponents”][“second-component”]: “…/…/components/second-child/index”&#xff0c;在 C:/Users/***/WeChatProjects/m…

Windows 中修改 MySQL 密碼

沒想到這樣一個簡單的需求&#xff0c;愣是試了半天沒試到有用的命令&#xff0c;最后終于找到一個有用的&#xff0c;在此做個記錄&#xff1a; set password for rootlocalhost 你的新密碼;

【C++與python】| splice語法對比列表切片

splice用法詳解 C 中的 splice示例 1&#xff1a;將整個列表 lst2 插入到 lst1 中某個位置示例 2&#xff1a;將 lst2 的一個元素插入到 lst1 中某個位置 Python中的列表切片&#xff08;Slicing&#xff09;示例 1&#xff1a;獲取列表的子列表示例 2&#xff1a;修改列表的子…

禪道二次開發——禪道zentaoPHP框架擴展機制——對視圖層(view)擴展

視圖文件的擴展分為兩種方式&#xff0c;一種是完全覆蓋&#xff0c;第二種是通過鉤子機制來擴展。 一、完全覆蓋 視圖文件的覆蓋可以通過完全覆蓋的方式來重新定義。比如我對bug模塊的create頁面進行擴展。原來的視圖文件是存放在module/bug/view/create.html.php。如果需要…

Android約束布局的概念與屬性(2)

目錄 3&#xff0e;鏈式約束4&#xff0e;輔助線 3&#xff0e;鏈式約束 如果兩個或以上控件通過下圖的方式約束在一起&#xff0c;就可以認為是他們是一條鏈&#xff08;如圖5為橫向的鏈&#xff0c;縱向同理&#xff09;。 圖5 鏈示意圖 如圖5所示&#xff0c;在預覽圖中選…

解讀網絡安全公司F5:助企業高效簡化多云和應用部署

伴隨企業加速數字化轉型工作、擴展到新的基礎設施環境并采用微服務架構&#xff0c;企業正擁抱混合和多云基礎設施所帶來的靈活性。Ernst & Young調查數據顯示&#xff0c;84%的企業正處于向現有網絡安全解決方案套件添加多種新技術的早期階段。企業同樣意識到&#xff0c;…

nftables(3)表達式(1)數據類型

簡介 前面文章主要介紹的是nftables的基本原理和基礎的配置&#xff0c;如nftables基本的表、鏈、規則的創建和管理。本篇文章主要介紹的是表達式EXPRESSIONS。 在網絡安全和數據處理中&#xff0c;表達式&#xff08;Expressions&#xff09;扮演著非常重要的角色。它們用于…