日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

MyBatis一次執(zhí)行多條SQL語句的操作

瀏覽:125日期:2023-10-20 17:57:42

有個常見的場景:刪除用戶的時(shí)候需要先刪除用戶的外鍵關(guān)聯(lián)數(shù)據(jù),否則會觸發(fā)規(guī)則報(bào)錯。

解決辦法不外乎有三個

1、多條sql分批執(zhí)行;

2、存儲過程或函數(shù)調(diào)用;

3、sql批量執(zhí)行。

今天我要說的是MyBatis中如何一次執(zhí)行多條語句(使用mysql數(shù)據(jù)庫)。

1、修改數(shù)據(jù)庫連接參數(shù)加上allowMultiQueries=true,如:

hikariConfig.security.jdbcUrl=jdbc:mysql://xx.xx.xx:3306/xxxxx?characterEncoding=utf-8&autoReconnect=true&failOverReadOnly=false&allowMultiQueries=true

2、直接寫多條語句,用“;”隔開即可

<delete parameterType='String'> delete from sec_user_role where userId=#{id}; delete from sec_user where id=#{id};</delete>

僅此而已~

補(bǔ)充知識:【MyBatis】動態(tài)SQL——foreach使用 /批量更新或批量插入

1.foreach的主要用在構(gòu)建in條件中,它可以在SQL語句中進(jìn)行迭代一個集合

2.可以傳遞一個 List 實(shí)例或者數(shù)組作為參數(shù)對象傳給 MyBatis。當(dāng)你這么做的時(shí)候,MyBatis 會自動將它包裝在一個 Map 中,用名稱作為鍵。List 實(shí)例將會以“l(fā)ist”作為鍵,而數(shù)組實(shí)例將會以“array”作為鍵

3.foreach的collection能夠支持的三種集合類型list,array以及map

4.foreach元素的屬性主要有 item,index,collection,open,separator,close。

item:集合中每一個元素進(jìn)行迭代時(shí)的別名

index:指定一個名字,用于表示在迭代過程中,每次迭代到的位置

collection:若傳遞的是集合,則為list;若傳遞的是數(shù)組,則為array;若傳入的參數(shù)是多個的時(shí)候,我們就需要把它們封裝成一個Map或者Object,則為傳入?yún)?shù)map的key即就是參數(shù)名

open:該語句以什么開始

close:以什么結(jié)束

separator:在每次進(jìn)行迭代之間以什么符號作為分隔符

以下是批量更新

一:傳遞單個集合(鍵值是pojo)

UPDATE t_userSET solary=2000WHERE id IN <foreach item='item' index='index' collection='list' separator=',' open='(' close=')'> #{item.id} </foreach>

二:傳遞單個數(shù)組(數(shù)組中是pojo)

UPDATE t_userSET solary=2000WHERE id IN <foreach item='item' index='index' collection='array' separator=',' open='(' close=')'> #{item.id} </foreach>

三:傳遞多個參數(shù)

UPDATE t_userSET solary=2000WHERE id IN <foreach item='item' index='index' collection='ids' separator=',' open='(' close=')'> #{item.id} </foreach>

三者唯一區(qū)別就是collection值不同

以上時(shí)提前把要跟新的值查出來放到集合或數(shù)組中,但可不可以IN中放查詢語句那,如:

UPDATE t_user SET solary = 2000 WHERE id IN ( SELECT id FROM t_user WHERE end_time < NOW( ) )

但是這樣是不行的,mysql不允許這樣寫(我猜可能是查的同時(shí)不同更改,就如list集合在做查詢錯做時(shí)是不能刪除的),但是可以在查詢時(shí)查詢,如:

SELECT * FROM t_userWHERE id IN ( SELECT id FROM t_user WHERE end_time < NOW( ) )

以下是批量插入(插入兩條數(shù)據(jù)記錄)

第一次嘗試:

INSERT t_usr ( NAME )VALUES < foreach collection = 'list' item = 'user' OPEN = '(' CLOSE = ')' SEPARATOR = ',' > #{user.name} </ foreach>

解析的sql為:

INSERT t_usr (name ) VALUES ( ? , ? )

報(bào)如下錯誤:

Cause: java.sql.SQLException: Column count doesn’t match value count at row 1

第二次嘗試:

INSERT t_usr (NAME )VALUES < foreach collection = 'list' item = 'user' OPEN = '' CLOSE = '' SEPARATOR = ',' > (#{user.name}) </ foreach>

解析的sql為: INSERT t_usr (id,name ) VALUES (?) , (?)

正確插入

以上這篇MyBatis一次執(zhí)行多條SQL語句的操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Mybatis 數(shù)據(jù)庫
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日韩一区二区三区精品视频第3页| 亚洲一区日本| 国产美女久久| 欧美一区二区三区久久| 蜜桃一区二区三区在线| 亚洲欧美日韩一区在线观看| 天堂av在线一区| 亚洲乱亚洲高清| 欧美久久香蕉| 国产一区二区三区免费在线| 日韩中文首页| 中文在线一区| 日韩一区二区三区精品 | 水蜜桃久久夜色精品一区| 一区二区精品伦理...| 亚洲二区免费| 一区二区高清| 国产精品一区二区精品| 欧美激情视频一区二区三区在线播放| 日韩精品91| 久久午夜精品| 最新中文字幕在线播放| 午夜久久黄色| 欧美在线看片| 欧美国产美女| 亚洲一区二区三区免费在线观看| 国产精品成久久久久| 久久精品主播| 日韩一区二区三区四区五区| 精品三级在线观看视频| 亚洲欧美日韩高清在线| 综合一区av| 老司机精品视频网| 在线综合亚洲| 久久精品女人| 久久亚洲欧美| 国产粉嫩在线观看| 一区二区国产在线| 日产精品一区| 国产日韩三级| 好吊视频一区二区三区四区| 欧美国产免费| 亚洲欧美不卡| 日韩成人免费| 亚洲精品四区| 色婷婷狠狠五月综合天色拍| 欧美精品中文| 亚洲综合欧美| 丝袜美腿诱惑一区二区三区| 久久国产免费看| 亚洲综合不卡| 久久婷婷丁香| 久久免费精品| 亚洲欧美网站在线观看| 深夜视频一区二区| 国产精品资源| 在线国产日韩| 久久久精品久久久久久96| 欧美日一区二区在线观看| 日韩视频二区| 日韩一区二区中文| 久久中文字幕一区二区三区| 日韩综合一区二区三区| 日韩视频不卡| 婷婷精品视频| 亚洲啊v在线| 国产suv精品一区二区四区视频 | 麻豆理论在线观看| 欧美久久亚洲| 综合欧美亚洲| 91九色精品国产一区二区| а√天堂中文在线资源8| 国产精品嫩草影院在线看| 久久午夜影视| 99国产成+人+综合+亚洲欧美| 在线天堂中文资源最新版| 国产午夜一区| 欧美亚洲tv| 奇米777国产一区国产二区| 国产精品日韩| 国产一区欧美| japanese国产精品| 最新中文字幕在线播放| 国产欧美日韩一区二区三区四区| 亚洲精一区二区三区| 欧美女激情福利| 国产高清一区| 好吊视频一区二区三区四区| 亚州av乱码久久精品蜜桃| 日韩免费av| 日本精品不卡| 欧美日韩精品免费观看视欧美高清免费大片| 蜜桃精品视频| 九九久久国产| av在线最新| 日韩免费久久| 亚洲四虎影院| 99久久婷婷这里只有精品| 日韩成人亚洲| 亚洲高清激情| 不卡av一区二区| 黄色免费成人| 久热综合在线亚洲精品| 亚洲深深色噜噜狠狠爱网站 | 欧美综合另类| 亚洲午夜av| 欧美精品一区二区三区精品| 亚洲一级网站| 久久亚洲二区| 日韩影片在线观看| 国产精品分类| 亚洲乱码一区| 日本视频在线一区| 老司机精品视频在线播放| 国产中文欧美日韩在线| 日韩国产综合| 伊人精品在线| 日本不卡高清| 高清日韩中文字幕| 久久网站免费观看| 日韩一区欧美二区| 欧美日本久久| 亚洲最新无码中文字幕久久| 国产综合精品| 亚洲视频电影在线| 欧美日韩一区自拍| 国产成人久久精品麻豆二区| 久久国产成人午夜av影院宅| 午夜一级久久| 国产乱论精品| 日韩成人亚洲| 亚洲精品在线二区| 欧美激情一区| 亚洲精品97| 久久激情综合网| 成人av三级| 中文一区一区三区免费在线观| 国产精品永久| 久久久久.com| 日韩欧美中文字幕电影 | 国产精品v一区二区三区| 肉色欧美久久久久久久免费看 | 国产成人精品福利| 亚洲免费影视| 国产一区丝袜| 亚洲人妖在线| 久久久精品日韩| 欧美日韩1区| 亚洲午夜91| 国产精品久久久久久久久久久久久久久 | 中文字幕一区日韩精品| 美女视频一区在线观看| 免费精品国产的网站免费观看| 日韩高清在线一区| 99热精品久久| 国产精品综合| 中文一区二区| 水蜜桃久久夜色精品一区| 亚洲一区二区三区高清| 首页国产精品| 日韩av一二三| 欧美日韩国产探花| 精品一区不卡| 日韩欧美激情电影| 亚洲精品网址| 日韩欧美一区二区三区免费看| 亚洲久久视频| 激情综合亚洲| 另类专区亚洲| 麻豆精品av| 日韩欧美美女在线观看| 亚洲激情社区| 久久理论电影| 国产一区二区三区四区五区传媒 | 136国产福利精品导航网址| 麻豆精品少妇| 亚洲精品护士| 亚洲免费中文| 激情偷拍久久| 日韩和的一区二在线| 久久久久伊人| 久久国产精品色av免费看| 美国欧美日韩国产在线播放| 激情婷婷亚洲| 久久狠狠婷婷| 电影天堂国产精品| 国产激情一区| 欧美日一区二区在线观看| 亚洲一区二区三区久久久| 自拍日韩欧美| 性欧美xxxx免费岛国不卡电影| 粉嫩av一区二区三区四区五区| 97成人在线| 日韩精品a在线观看91| 亚洲一区二区三区久久久| 亚洲综合不卡| 蜜桃av一区| 久久先锋影音| 视频一区免费在线观看| 亚洲黄色在线|