Mybatis SQL實現批量新增,修改,刪除紀要

2021-10-10 12:42:04 字數 1442 閱讀 1719

mybatis實現批量新增,修改,刪除?

背景: 基礎的操作往往經常用到,時常會除錯,為了以後使用方便,特此紀要.

說明: 主要是對foreach,trim等標籤的應用.(是完成上述操作的重心.)

問題: mybatis如何實現sql處理批量新增,修改,刪除?

前情提要:首先了解一下foreach和trim都有那些屬性,以方便對其更好的操作.

: collection: 集合的型別或傳遞過來的集合例項名.

(陣列:array,list:list,map:map,自己定義的物件:物件例項名)

open: open表示拼接的內容以什麼內容開始,是最外層的巢狀.

close: close表示拼接的內容以什麼內容結束,也是最外層的巢狀.

separator: separator表示什麼內容作為間隔或分割拼接的資料.

index: index在list和陣列中表示陣列的下標,在map中表示map的key.(可以省略)

item:

item的內容如果是list arr陣列,此時的item是陣列中的內容.

: prefix: prefix表示拼接的內容以什麼內容開始.("prefix"表示字首)

suffix: suffix表示拼接的內容以什麼內容結束.("suffix"表示字尾)

prefixoverrides: prefixoverrides表示去除sql之前的指定內容.

suffixoverrides: suffixoverrides表示去除sql之後的指定內容. (suffixoverrides表示在...之後進行處理)

解決辦法:

// 批量修改.

public int batchedit(setidsset, string starttime, string endtime);

update table

set start_time = #,

end_time = #

where platform_id in

#// 批量新增.

public int batchadd(setidsset, string starttime, string endtime);

insert into table

start_time,

end_time,

xx_id

values

#,#,#,

// 批量刪除.

public int deletebyids(long ids);

delete from be_platform where id in

#// selectbyids.

public listselectbyids(long ids, string status);

where id in

#and status = #

Mybatis SQL語句批量操作與多級快取

首先在資料庫中寫出批量插入的sql語句,然後查詢重複的資料,再思考拼接過程。第一種通過別名實現表的同一,從而合併成一張表 插入資料 第一種用select dual 空表 再用集合 union all 合併 insert into dept select 60 deptno,科創部 dname,南昌 ...

利用CSVDE命令實現域使用者賬戶的批量新增示例

以下內容摘自筆者編著的最新圖書 網管員必讀 網路管理 第2版 一書。2.4.5節第3小點 利用csvde命令實現域使用者賬戶的批量新增示例 現用記事本程式製作為hellen lycb linda cathy這四個使用者在grfwg.local域下的sales組織單位中批量新增的csv格式檔案。所新增...

利用CSVDE命令實現域使用者賬戶的批量新增示例

以下內容摘自筆者編著的最新圖書 網管員必讀 網路管理 第2版 一書。2.4.5節第3小點 利用csvde命令實現域使用者賬戶的批量新增示例 現用記事本程式製作為 hellen lycb linda cathy 這四個使用者在 grfwg.local 域下的sales 組織單位中批量新增的 csv格式...