创建序列
create sequence a
increament by 1
start with 1
maxvalue 100
nocycle
cache 10;
如果往空表中直接插入数据,取a.nextval为id的话,查询结果id会从2开始!如果不是从空表插入数据就会从1开始!这是什么原因??请指教
例如:
create table stu(
id number,
name varchar2(10)
);
直接往里面插入数据:insert into stu values(a.nextval,'link');
id会从2开始(注意这是从空表中插入了数据)
要是原来的表中插入了一条数据,id则从1开始的。(在这之前,我把表和序列都重建了)
insert into stu values(12,'d');
insert into stu values(a.nextval,'link');
oracle关于序列的nextval取值
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- 二三三 2016-05-09 13:37关注
nextval这个函数是序列里去下一个值的,你设置的从1开始,如果你用了nextval,生成的就是下一个产生的值,如果你设置值的间距是1的话,你用完就产生的是2,如果不用就产生当前的值,就是1
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 #MATLAB仿真#车辆换道路径规划
- ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
- ¥15 数据可视化Python
- ¥15 要给毕业设计添加扫码登录的功能!!有偿
- ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
- ¥15 微信公众号自制会员卡没有收款渠道啊
- ¥100 Jenkins自动化部署—悬赏100元
- ¥15 关于#python#的问题:求帮写python代码
- ¥20 MATLAB画图图形出现上下震荡的线条
- ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘