码迷,mamicode.com
首页 > 数据库 > 详细

数据库中 nextVal,currVal的应用.

时间:2015-01-06 18:11:51      阅读:177      评论:0      收藏:0      [点我收藏+]

标签:数据库nextval   数据库currval   

   x.nextVal  得到x序列下一个序列值,x.currVal 得到x序列当前序列值。

   注意:在引用 x.currVal之前必须先引用x.nextVal,否则会报ORA-08002: 序列 x.currVal尚未在此会话中定义。

 

具体应用

1、创建一个序列:

        create sequence test_seq increment by 1 start with 1 maxvalue 30 minvalue 0 nocycle cache 10 order;

        select sequence test_seq.nextVal from dual;//每调用一次nextVal,序列值会递增一次(递增值自定义)

        select sequence test_seq.currVal from dual;

2、创建一个表:

        create table test (col1 int, col2 int);

3、插入记录:

        insert into test values (0, 0);

4、运用nextVal

        insert into test (col1, col2) values (test_seq.nextval, test_seq.nextval);//这里大家猜一下col1和col2值会是一样吗?

        假如test表中有两条col1值都为2的记录,那么:

        update test set col2 = test_seq.nextval where col1 = 2;//这里大家又猜一下更新后col2值会是一样吗?

数据库中 nextVal,currVal的应用.

标签:数据库nextval   数据库currval   

原文地址:http://blog.csdn.net/xlb744868186/article/details/42459423

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!