oracle重置序列

 时间:2026-02-15 09:40:31

1、一般需要建一序列来实现oracle某一表主键列的自增长,使用的时候直接通过NextVal就可获得唯一值。

oracle重置序列

2、有时候备份数据库需要重置序列,可以通过以下存储过程来完成():

create or replace procedure rseq(seqname varchar2) as

 n number(100);

t_sql varchar2(1000);

 begin

 execute immediate 'select '||seqname||'.nextval from dual' into n;

  n:=-(n-1);

 t_sql :='alter sequence '||seqname||' increment by '|| n;

  execute immediate t_sql ;

 execute immediate 'select '||seqname||'.nextval from dual' into n;

  t_sql :='alter sequence '||seqname||' increment by 1 ';

 execute immediate t_sql ;

 end rseq;

3、重置序列可以使用语句:call rseq(seqname);

但是有时候向表里插入数据,还是提示重复值,可以重建索引:

alter index PK_UINLGORT rebuild;//重建索引

再有问题,再对表进行分析,然后重建索引:

analyze table TABLE_NAME compute statistics;analyze table TABLE_NAME compute statistics for all indexes ;

oracle重置序列

  • github如何创建Repository(代码仓库)
  • U盘启动项 BIOS找不到U盘启动项怎么办
  • sql server 连接超时设置
  • 如何解决IIS7.0下"对路径XXXXXXXX的访问被拒绝"
  • PPTV怎么用 / PPTV怎么下载视频
  • 热门搜索
    甘肃的旅游景点 章丘旅游景点大全 2月份去哪里旅游最好 嘉定旅游景点 韩国旅游发展局官网 杭州到黄山旅游攻略 广东肇庆旅游攻略 田横岛旅游度假区 旅游宣传片 江西旅游景点排行