mybatis insert
-
新增数据
insert into sys_user(id,user_name,user_password,user_email,user_info,head_img,create_time) values(#{id},#{userName},#{userPassword},#{userEmail},#{userInfo},#{headImg},#{createTime}) -
新增返回主键
直接从对象属性中获取id
insert into sys_user(id,user_name,user_password,user_email,user_info,head_img,create_time) values( #{id},#{userName},#{userPassword}, #{userEmail},#{userInfo}, #{headImg, jdbcType=BLOB}, #{createTime,jdbcType=TIMESTAMP} ) -
获取主键
mysql:
select last_insert_id()
oracle:
select SEQ_ID.nextval from dual
sqlserver:
insert into sys_user(id,user_name,user_password,user_email,user_info,head_img,create_time) values( #{id},#{userName},#{userPassword}, #{userEmail},#{userInfo}, #{headImg, jdbcType=BLOB}, #{createTime,jdbcType=TIMESTAMP} ) select last_insert_id()
select scope_identity() -
注解@Insert
@Insert({ “insert into sys_role(id,role_name,enabled,create_by,create_time)”
- “values(#{id},#{roleName},#{enabled},#{createBy},#{createTime})” })
void insert1(SysRole sysRole);
- “values(#{id},#{roleName},#{enabled},#{createBy},#{createTime})” })
-
返回自增主键
@Insert({ “insert into sys_role(role_name,enabled,create_by,create_time)”
- “values(#{roleName},#{enabled},#{createBy},#{createTime})” })
@Options(useGeneratedKeys=true,keyProperty=“id”)
void insert2(SysRole sysRole);
- “values(#{roleName},#{enabled},#{createBy},#{createTime})” })
-
返回非自增主键
@Insert({ “insert into sys_role(role_name,enabled,create_by,create_time)”
- “values(#{roleName},#{enabled},#{createBy},#{createTime})” })
@SelectKey(statement = “select last_insert_id()”,
keyProperty = “id”,
resultType = Long.class,
before = false
)
void insert3(SysRole sysRole);