兩者的區別在於如果選擇insert 那么所有的字段都會添加一遍即使沒有值,而insertSelective則會判斷非空才進行插入。
體現在sql上為:
student表:
id,name,age
實體代碼為:
-
Student student = new Student();
-
student.setId( 1);
-
student.setName( "張三");
使用insert時執行的sql語句為:insert into student(id,name,age) values (1,‘zhangsan’,null);
而使用insertSelective時執行的sql語句為:insert into student(id,name) values (1,‘zhangsan’);