oracel: 通过特殊表序列来实现oracle自增id (mybatis实现自增id)
本项目结合mybaits来使用。 加入有一个用户表:sys_user,?自增id为user_id. 怎么来实现id的自增呢? 通过sql语句select * from user_sequences,检查SYS_USER表的序列:SYS_USER_USER_ID_SEQ 如果没有则需要创建此序列: CREATE SEQUENCE SYS_USER_USER_ID_SEQ INCREMENT BY 1 START WITH 1 NOMAXvalue NOCYCLE NOCACHE;
语法如下: 创建序列 ? 修改、删除序列?
? 序列的使用 ? mybatis语法: <insert id="save" parameterType="SysUserPO" useGeneratedKeys="false"> <!--/** 假如序列不存在,请查看一下select * from user_sequences命令,查看下SYS_USER表的序列可存在。如果不存在则通过代码查询user_id **/--> <selectKey resultType="java.lang.Long" keyProperty="userId" order="BEFORE"> SELECT SYS_USER_USER_ID_SEQ.Nextval as userId FROM DUAL </selectKey> insert into sys_user ( user_id,username,realname,password,email,mobile,status,create_user_id,create_time,update_time ) values ( #{userId},#{username},#{realname},#{password},#{email},#{mobile},#{status},#{createUserId},#{createTime},#{updateTime} ) </insert> (编辑:海南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |