使用java向oracle数据库中添加记录时,有一个id字段是自动增长的,该怎么向数据库中
推荐于2018-03-13
展开全部
Oracle 使用 序列号 + 触发器 实现自增的例子如下:
-- 这个是测试的序列号
SQL> CREATE SEQUENCE test_sequence2
2 increment by 1 -- 每次递增1
3 start with 1 -- 从1开始
4 nomaxvalue -- 没有最大值
5 minvalue 1 -- 最小值=1
6 NOCYCLE; -- 不循环
Sequence created.
-- 这个是测试的表
SQL> CREATE TABLE test_create_tab2 (
2 id INT,
3 val VARCHAR(10),
4 PRIMARY KEY (id)
5 );
Table created.
-- 这个是测试的触发器
SQL> CREATE OR REPLACE TRIGGER BeforeTestCreate2Insert
2 BEFORE INSERT ON test_create_tab2
3 FOR EACH ROW
4 BEGIN
5 SELECT test_sequence2.nextval INTO :new.id FROM dual;
6 END;
7 /
Trigger created.
-- 下面是测试插入的处理
SQL> INSERT INTO test_create_tab2(val) VALUES ('NO id');
1 row created.
SQL> INSERT INTO test_create_tab2(id, val) VALUES (1, 'id no use');
1 row created.
SQL> SELECT * FROM test_create_tab2;
ID VAL
---------- --------------------
1 NO id
2 id no use
2013-09-10
展开全部
id自动增长,程序里直接赋值成null即可
更多追问追答
追问
但是怎么触发过程让他自动增长呢
追答
你用的什么方式?纯jdbc还是其他??
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以在数据库中建序列squence作为id
追问
我知道这样的方法,我是说在添加记录的时候,怎样调用squence序列,自动增长
追答
insert into 表 (id,name) values(squence+1,"") 就这个意思吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询