zoukankan      html  css  js  c++  java
  • mybatis配置oracle的主键自增长

    引用自:https://hacpai.com/article/1405392025960

    mysql、sqlserver等数据库本身带有主键自增长像auto_increment的功能可以直接使用

    useGeneratedKeys=”true”来实现,比如下面的配置

    <insert id=”add” useGeneratedKeys=”true” keyProperty=”id” parameterType=”Auth”>
    insert into s_user_auth (id,user_id, user_name) values(#{id},#{userid},#{username})
    </insert>

    而oracle则不行,oracle主键自增长是通过sequence实现的,所以这种方式就不可以了,需要使用:

    1.先通过sequence查出来id,再insert

    <insert id=”add” useGeneratedKeys=”false” keyProperty=”id” parameterType=”Auth”>
    <selectKey resultType=”String”  keyProperty=”id” order=”BEFORE”>
    select yoursequence.nextval as id from dual
    </selectKey>
    insert into s_user_auth (id,user_id, user_name) values(#{id},#{userid},#{username})
    </insert>

    2.直接insertsequence.nextval,如下

    <insert id=”add” useGeneratedKeys=”false” keyProperty=”id” parameterType=”Auth”>
    insert into s_user_auth (id,user_id, user_name) values(yoursequence.nextval,#{userid},#{username})
    </insert>
  • 相关阅读:
    最短路(Floyed、Dijkstra、Bellman-Ford、SPFA)
    查找技术
    简单线段树
    dfs
    bfs
    插件工具集合
    Web前端代码规范
    Javascript 判断手机横竖屏状态
    Git 笔记2
    git 笔记 1
  • 原文地址:https://www.cnblogs.com/zhangmu126/p/5234180.html
Copyright © 2011-2022 走看看