好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

mybatis定义sql语句标签之delete标签解析

mybatis之delete标签

delete标签目前没什么好说的,并且这个标签在实际业务中使用的非常少。

因为对于真实业务来说,所有数据都是有价值的,不允许做硬删除,除非没业务的垃圾数据。

属性说明

id:和其它标签一样是唯一标志

简单示例

?

1

2

3

< delete id= "deleteNodeById" >

        delete from t_node_agent where node_id=#{nodeId}

</ delete >

唯一需要注意的,mysql删除写法比较奇葩,如果有别名的话。 

<delete>标签与delete语句

delete语句

id : sql片段在命名空间内的唯一标识. parameterType : 参数类型, flushCache : 是否刷新(清空)一级缓存和二级缓存, 默认为true. 使用默认即可. timeout : sql执行超时时间, 默认未设置, 由数据库驱动决定. statementType : 执行sql时使用的statement类型, 默认为PREPARED. 可选值为:STATEMENT,PREPARED 或 CALLABLE 的一个

?

1

2

3

4

<! -- 删除学生 -->  

< delete id= "deleteStudent" parameterType= "StudentEntity" >  

        DELETE FROM STUDENT_TBL WHERE STUDENT_ID = #{studentID}  

</ delete > 

批量删除

?

1

2

3

4

5

6

7

<! -- 通过主键集合批量删除记录 -->

< delete id= "batchRemoveUserByPks" parameterType= "java.util.List" >

   DELETE FROM LD_USER WHERE ID in

  <foreach item= "item" index = "index" collection= "list" open = "(" separator= "," close = ")" >

    #{item}

  </foreach>

</ delete >

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

原文链接:https://blog.csdn.net/weixin_38280568/article/details/102673062

查看更多关于mybatis定义sql语句标签之delete标签解析的详细内容...

  阅读:22次