mybatis中insert方法跟insertSelective的应用场景 5C

这2个方法的区别我知道,第二个不为null才才入,第一个是null就插入null,
如果数据库设置了默认值,得用insertSelective,那么这2个应用场景有啥不用呢,
我都是用insertSelective

4个回答

对于insert:
//插入一条数据
//支持Oracle序列,UUID,类似Mysql的INDENTITY自动增长(自动回写)
//优先使用传入的参数值,参数值空时,才会使用序列、UUID,自动增长
int insert(T record);

对于InsertSelective
//插入一条数据,只插入不为null的字段,不会影响有默认值的字段
//支持Oracle序列,UUID,类似Mysql的INDENTITY自动增长(自动回写)
//优先使用传入的参数值,参数值空时,才会使用序列、UUID,自动增长
int insertSelective(T record);

工作这么长时间,基本都用insertSelective。如果用到insert就算是用错了。不过insert还是有用的,比如插入的时候顺便置空、或修改了原有的数据等。

这是我前几天了解的,很详细,可以看下:https://blog.csdn.net/TofuCai/article/details/82285001

qq_45815504
面相对象 你这说和没说一样
5 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问