使用Mybatis如何實(shí)現(xiàn)刪除多個(gè)數(shù)據(jù)
Mybatis刪除多個(gè)數(shù)據(jù)
例如:
刪除數(shù)據(jù)庫中sid=1和sid=2的數(shù)據(jù)
操作步驟如下
1.在實(shí)體類中創(chuàng)建一個(gè)LIst用于存放要?jiǎng)h除的sid
2.配置Mapper.xml如下:
collection裝要遍歷的字段,item裝獲取到的變量,separator裝多值之間分割的字段
如果SQL刪除語句為:
DELETE FROM animal WHERE a_sid IN(1,2)
用foreach標(biāo)簽中的open="" close="",分別表示以什么開始和以什么結(jié)束
3.接口文件中配置執(zhí)行語句
public int delMor(Animal animal);
4.配置Test相關(guān)語句測試:
Mybatis批量刪除多表數(shù)據(jù)
業(yè)務(wù)需求
需要一鍵清除數(shù)據(jù),將庫中以“obj_”前綴開頭的表數(shù)據(jù)全部清除。
查詢以obj_前綴開頭的表的截?cái)嗾Z句
mapper接口方法:
/** * 查詢所有obj開頭的表的數(shù)據(jù)刪除sql */ List<String> selectAllObjTableRemoveSql();
xml:
<select id="selectAllObjTableRemoveSql" resultType="java.lang.String"> SELECT CONCAT( 'truncate table ', TABLE_NAME, ';' ) FROM information_schema.TABLES WHERE table_schema = 'sc-gateway' AND TABLE_NAME LIKE 'obj_%'; </select>
其中的“obj_”就是需要匹配的表名稱字符
查詢的結(jié)果是一個(gè)List<String>,其中的每項(xiàng)就是一張表的截?cái)嗾Z句
后續(xù)只要將每個(gè)語句執(zhí)行一遍就可以了
直接將整個(gè)String傳過去執(zhí)行
<delete id="removeDataBySql" parameterType="String"> ${value} </delete>
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java設(shè)計(jì)模式中的設(shè)計(jì)原則之合成復(fù)用原則詳解
這篇文章主要介紹了Java設(shè)計(jì)模式中的設(shè)計(jì)原則之合成復(fù)用原則詳解,原則是盡量使用合成/聚合的方式,而不是使用繼承聚合關(guān)系表示的是整體和部分的關(guān)系,整體與部分可以分開,可以理解為成員變量和當(dāng)前類的關(guān)系就是聚合關(guān)系,需要的朋友可以參考下2023-11-11詳解Java中Dijkstra(迪杰斯特拉)算法的圖解與實(shí)現(xiàn)
Dijkstra(迪杰斯特拉)算法是典型的單源最短路徑算法,用于計(jì)算一個(gè)節(jié)點(diǎn)到其他所有節(jié)點(diǎn)的最短路徑。本文將詳解該算法的圖解與實(shí)現(xiàn),需要的可以參考一下2022-05-05Feign遠(yuǎn)程調(diào)用傳遞對象參數(shù)并返回自定義分頁數(shù)據(jù)的過程解析
這篇文章主要介紹了Feign遠(yuǎn)程調(diào)用傳遞對象參數(shù)并返回自定義分頁數(shù)據(jù)的過程解析,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-03-03基于selenium-java封裝chrome、firefox、phantomjs實(shí)現(xiàn)爬蟲
這篇文章主要介紹了基于selenium-java封裝chrome、firefox、phantomjs實(shí)現(xiàn)爬蟲,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2020-10-10網(wǎng)關(guān)Spring Cloud Gateway HTTP超時(shí)配置問題
這篇文章主要介紹了網(wǎng)關(guān)Spring Cloud Gateway HTTP超時(shí)配置問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01Java File類 mkdir 不能創(chuàng)建多層目錄的解決
這篇文章主要介紹了Java File類 mkdir 不能創(chuàng)建多層目錄的解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-09-09