Oracle:
SELECT SEQ_TEST.NEXTVAL FROM DUAL
insert into category (id,name_zh, parent_id,
show_order, delete_status, description
)
values (
#{id,jdbcType=NUMBER},
#{nameZh,jdbcType=VARCHAR},
#{parentId,jdbcType=NUMBER},
#{showOrder,jdbcType=NUMBER},
#{deleteStatus,jdbcType=NUMBER},
#{description,jdbcType=VARCHAR}
)
MySQL:
针对自增主键的表,在插入时不需要主键,而是在插入过程自动获取一个自增的主键,比如MySQL,可以采用如下两种配置方式:
insert into category (id,name_zh, parent_id,
show_order, delete_status, description
)
values (
#{id,jdbcType=INTEGER},
#{nameZh,jdbcType=VARCHAR},
#{parentId,jdbcType=INTEGER},
#{showOrder,jdbcType=INTEGER},
#{deleteStatus,jdbcType=BIT},
#{description,jdbcType=VARCHAR}
)
或
SELECT LAST_INSERT_ID() AS id
insert into category (id,name_zh, parent_id,
show_order, delete_status, description
)
values (
#{id,jdbcType=INTEGER},
#{nameZh,jdbcType=VARCHAR},
#{parentId,jdbcType=INTEGER},
#{showOrder,jdbcType=INTEGER},
#{deleteStatus,jdbcType=BIT},
#{description,jdbcType=VARCHAR}
)
UUID:
在Oracle中:
select sys_guid() from dual
insert into SYSTEM_DEPARTMENT (ID,DEPNAME, SUPERID, SORT, STATE)
values ( #{id,jdbcType=VARCHAR},#{depname,jdbcType=VARCHAR},
#{superid,jdbcType=DECIMAL}, #{sort,jdbcType=DECIMAL},
#{state,jdbcType=DECIMAL})
在Mysql中:
SELECT UUID()
insert into SYSTEM_DEPARTMENT (ID,DEPNAME, SUPERID, SORT, STATE)
values ( #{id,jdbcType=VARCHAR},#{depname,jdbcType=VARCHAR},
#{superid,jdbcType=INTEGER}, #{sort,jdbcType=INTEGER},
#{state,jdbcType=INTEGER})
注:UUID如不需要连字符'-'可以使用数据库函数进行处理,如mysql: select replace(uuid(),'-','') UUID ;