如何才能改变当前序列的值呢?

li426 2004-10-14 11:40:06
只有删除序列,在重建序列一种办法吗?
...全文
204 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
leoiong 2004-10-14
  • 打赏
  • 举报
回复
当然是alter sequence.............................这儿好多菜鸟啊!
bluelamb 2004-10-14
  • 打赏
  • 举报
回复
只能这样
zmgowin 2004-10-14
  • 打赏
  • 举报
回复
先alter sequence .. increment by value
再执行select ..nextval from dual;
也可以实现啊
lialin 2004-10-14
  • 打赏
  • 举报
回复
呵呵,估计是没有什么好办法了,最多就是把开始值更改到你想要的值然后重新建立!
freddy2003 2004-10-14
  • 打赏
  • 举报
回复
liujiin 2004-10-14
  • 打赏
  • 举报
回复
一句sql是不能够实现的,还不如直接drop再create呢?
比如一个sequence(当前序列值为5523202)如下
-- Create sequence
create sequence SEQ_WXTHCOUNT
minvalue 1
maxvalue 99999999
start with 5523202
increment by 1
cache 20;
修改当前序列值为23的过程要经过一系列步骤,如下:
-- Modify the last number
alter sequence SEQ_WXTHCOUNT increment by -5523179 nocache;
select SEQ_WXTHCOUNT.nextval from dual;
alter sequence SEQ_WXTHCOUNT increment by 1 nocache;
declare
LastValue integer;
begin
loop
select SEQ_WXTHCOUNT.currval into LastValue from dual;
exit when LastValue >= 23 - 1;
select SEQ_WXTHCOUNT.nextval into LastValue from dual;
end loop;
end;
/
alter sequence SEQ_WXTHCOUNT increment by 1 cache 20;
li426 2004-10-14
  • 打赏
  • 举报
回复
zmgowin 能给出比较完整的alter sequence 语句吗?谢谢

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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