如何设定SEQUENCE,使序列号每天从1开始 如何每天重新设定SEQUENCE,使序列号从1开始 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 --创建PRO每天处理一下. create or replace procedure seq_reset(v_seqname in varchar2) as n number(10); tsql varchar2(100);begin execute immediate 'select ' || v_seqname || '.nextval from dual' into n; n := - (n - 1); tsql := 'alter sequence ' || v_seqname || ' increment by ' || n; execute immediate tsql; execute immediate 'select ' || v_seqname || '.nextval from dual' into n; tsql := 'alter sequence ' || v_seqname ||' increment by 1'; execute immediate tsql;end seq_reset; --创建PRO create or replace procedure seq_reset(v_seqname in varchar2) as n number(10); tsql varchar2(100);begin execute immediate 'select ' || v_seqname || '.nextval from dual' into n; n := - (n - 1); tsql := 'alter sequence ' || v_seqname || ' increment by ' || n; execute immediate tsql; execute immediate 'select ' || v_seqname || '.nextval from dual' into n; tsql := 'alter sequence ' || v_seqname ||' increment by 1'; execute immediate tsql;end seq_reset; 可以设置定时任务,每日0点触发,先drop,再create, 用动态sql之execute 应该可以实现 需要在其前后加上dbms_lock 数据库子查询问题。请各位大牛赐教 windows 2003下报ora-12518的错误 如何在大数据量下最有效率的修改某一字段 Oracle下建立存储过程中调用另一个带参数的存储过程 怎么知道orcale 连结池有多少个 存储??? 寻找某字段为空的记录 不知道怎么问了,进来看,在线等,救急 请问如何才能从otn.oracle.com下载运9i ,是免费的吗? oracle 优化 请教 急急急!!oracle10新建用户没有相应方案 请教高手,用SQL怎么查询某个表的建索引的语句,谢谢
create or replace procedure seq_reset(v_seqname in varchar2) as
n number(10);
tsql varchar2(100);
begin
execute immediate 'select ' || v_seqname || '.nextval from dual' into n;
n := - (n - 1);
tsql := 'alter sequence ' || v_seqname || ' increment by ' || n;
execute immediate tsql;
execute immediate 'select ' || v_seqname || '.nextval from dual' into n;
tsql := 'alter sequence ' || v_seqname ||' increment by 1';
execute immediate tsql;
end seq_reset;
create or replace procedure seq_reset(v_seqname in varchar2) as
n number(10);
tsql varchar2(100);
begin
execute immediate 'select ' || v_seqname || '.nextval from dual' into n;
n := - (n - 1);
tsql := 'alter sequence ' || v_seqname || ' increment by ' || n;
execute immediate tsql;
execute immediate 'select ' || v_seqname || '.nextval from dual' into n;
tsql := 'alter sequence ' || v_seqname ||' increment by 1';
execute immediate tsql;
end seq_reset;
需要在其前后加上dbms_lock