Orcle序列问题,详情请进

devilmoon_xp 2003-09-08 12:39:30
将序列所产生的值做为我一个表的主键值,但当我删除我表中的一条记录的时候,所消耗的序列也会自动减1吗?如果不是,那序列总有用完的一天啊,特别是几个表使用同一个序列的时候,不知道实际情况是怎么样的啊,谢谢!!
...全文
80 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
pluto74 2003-09-08
  • 打赏
  • 举报
回复
不会自动减一的,会用完,但是那是需要很长时间的阿:最大值9999999999999999。。。若干个九呢。
hdkkk 2003-09-08
  • 打赏
  • 举报
回复
不会 你可设置最大值 999999999999999....

够你用上上千年了吧
hesi726 2003-09-08
  • 打赏
  • 举报
回复
不会的!
如果不是,那序列总有用完的一天啊,特别是几个表使用同一个序列的时候??
WHY??
如果使用 序列来作关联,这样的用法不对啊!
难道你使用 seq_xxx.curr v\\
SEQ_XXX.CURRVAL??
josejose 2003-09-08
  • 打赏
  • 举报
回复
最好根据楼上的语句
给表键一个触发器,那么每次插入的时候就方便了
zhou_sheng 2003-09-08
  • 打赏
  • 举报
回复
Oracle中如何实现某一字段自动增加1?
实现方法:
建立一个最小为1,最大为999999999的一个序列号会自动循环的序列

create sequence 序列名
increment by 1
start with 1
maxvalue 999999999
cycle;

当向表中插入数据时,SQL语句写法如下:

SQL> insert into 表名 values(序列名.nextval,列1值,列2值);
handsomeduke 2003-09-08
  • 打赏
  • 举报
回复
序列值是不能回滚的,按照建立序列的缺省设置也就够用了。

17,082

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧