oracle数据库id不自动增长,用java语言怎么解决
展开全部
oracle的数据库id可以用两种方法解决:
1、就是应用oracle的序列:sequence
CREATE SEQUENCE emp_sequence
INCREMENT BY 1 —— 每次加几个
START WITH 1 —— 从1开始计数
NOMAXVALUE —— 不设置最大值
NOCYCLE —— 一直累加,不循环
CACHE 10;
oracle的sequence是一种自增长的值,当使用时可以根据你的需要,逐增1或者是10或者是你想的任何值。
在使用序列的时候,用 emp_sequence.nextval(序列名.nextval)
2、在使用Java实现的时候,一般都是从数据库中作一次查询:
select (max(id)+1) id from 表
然后通过最大id+1来实现类控制id,最好的效果还是从序列实现(个人推荐)
1、就是应用oracle的序列:sequence
CREATE SEQUENCE emp_sequence
INCREMENT BY 1 —— 每次加几个
START WITH 1 —— 从1开始计数
NOMAXVALUE —— 不设置最大值
NOCYCLE —— 一直累加,不循环
CACHE 10;
oracle的sequence是一种自增长的值,当使用时可以根据你的需要,逐增1或者是10或者是你想的任何值。
在使用序列的时候,用 emp_sequence.nextval(序列名.nextval)
2、在使用Java实现的时候,一般都是从数据库中作一次查询:
select (max(id)+1) id from 表
然后通过最大id+1来实现类控制id,最好的效果还是从序列实现(个人推荐)
展开全部
有2个方法:
1、在oracle上建立sequence,然后在表建立触发器,然后将该sequence的nextval赋给id即可。
2、在oracle上建立sequence,然后insert进表时,直接将该sequence的nextval赋予给id列。 如:
insert into tb_name(id) values(sequence名字.nextval);
1、在oracle上建立sequence,然后在表建立触发器,然后将该sequence的nextval赋给id即可。
2、在oracle上建立sequence,然后insert进表时,直接将该sequence的nextval赋予给id列。 如:
insert into tb_name(id) values(sequence名字.nextval);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以自动增长的,在数据库里面建立sequence序列实现
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询