mybatis 中的updateByPrimaryKey与updateByPrimaryKeySelective

简介: 在abator中可生成iBatis的代码。其中,Sql_map中带有的两个函数是:updateByPrimaryKeySelective只是更新新的model中不为空的字段updateByPrimaryKey将为空的字段在数据库中置为NULL例如CartServiceImpl#update若DAO中使用的是 updateByPrimaryKeySelective,则按照不为空的值去更新。

在abator中可生成iBatis的代码。其中,Sql_map中带有的两个函数是:

  • updateByPrimaryKeySelective
    只是更新新的model中不为空的字段
  • updateByPrimaryKey
    将为空的字段在数据库中置为NULL

例如

img_58e8435c95e3f3bbeeeca9adf57552a0.png
CartServiceImpl#update

若DAO中使用的是 updateByPrimaryKeySelective,则按照不为空的值去更新。
如果使用 updateByPrimaryKey,这在未定义的字段更新后就没有了。

SQL语句对比分析

img_444f37e052be2cae03365fe8e0b87bf0.png

一系列的isNull判断


img_0ecc1f97d74a5f51a83542e40475d026.png

没有判断,直接加载

目录
相关文章
|
2月前
|
缓存 Java 数据库连接
Mybatis
Mybatis
22 0
|
7月前
|
SQL Java 数据库连接
|
7月前
|
SQL XML Java
|
12天前
|
Java 数据库连接 数据库
mybatis的@MappedTypes
mybatis的@MappedTypes
18 0
|
4月前
|
Java 数据库连接 测试技术
mybatis中@Many
mybatis中@Many
31 0
|
4月前
|
SQL 安全 Java
Mybatis中# 和 $ 的使用详解
Mybatis中# 和 $ 的使用详解
94 0
|
7月前
|
SQL Java 数据库连接
|
7月前
|
SQL Java 数据库连接
|
8月前
|
SQL Java 数据库连接
Mybatis Plus
Mybatis Plus
|
10月前
|
SQL XML Java

热门文章

最新文章