我在oracle里建了一张表,A varchar2(54) B date C int D varchar2(256) E varchar2(256)
现在想ABC联合主键 当出现AB都相同的数据时C自动加1  若AB不同则C始终为1  能实现吗?HibernateOraclejava

解决方案 »

  1.   

    oracle 不存在 自动增长这一说,是通过序列来给Id赋值的,你在你JAVA 新增的时候 判断下是否相同,如果相同就去拿序列的值,不同的话就直接新增就好了。
      

  2.   

    oracle设主键自增是比较麻烦的,要设置一个序列号。
      

  3.   

    首先你要有个序列 :seq_a_id然后在JAVA里面:
    第一种:
    列: A:1 B:2:C:3
    语句:insert.....(1,2,3)---正常的 不相等
    第二种:
    列:A:1B:1:C1
    语句:insert.....(seq_a_id.nextVal,2,3)---不正常的 相等的,将A列的值用序列代替
      

  4.   

    :
    这个seq_a_id是在数据库里的还是在?