Oracle导出数据库中所有sequence

方案一
select 'create sequence &your_schema_name.'|| SEQUENCE_NAME || ' minvalue '||MIN_VALUE||' maxvalue '||MAX_VALUE||' start with '||LAST_NUMBER||' increment by '||INCREMENT_BY||' cache '||CACHE_SIZE||' ;'
from dba_sequences where SEQUENCE_OWNER=upper('&your_schema_name');


方案二
select 'create sequence '||sequence_name||    
       ' minvalue '||min_value||    
       ' maxvalue '||max_value||    
       ' start with '||(last_number+1000000)||    
       ' increment by '||increment_by||    
       (case when cache_size=0 then ' nocache' else ' cache '||cache_size end) ||';'   
from user_sequences 


注:

dba_sequences 视图的列

SEQUENCE_OWNER 拥有者/所有者


USER_SEQUENCES 视图的列

Sequence_Name 序列名

Min_Value 序列的最小值

Max_Value 序列的最大值

Increment_By 序列值之间的增量

Cycle_Flag 一个标志,一旦达到Max_Value 值,用来表明该值能否再循环回Min_Value 值

Order_Flag 一个标志,用来表明序列号是否按顺序生成

Cache_Size 内存中缓存的序列项的编号

Last_Number 使用的或缓存的最后一个序列号,一般大于缓冲区中的最后一个值

Last_Number 列在普通的数据库操作过程中不被更新,它在数据库的重新启动/恢复操作中使用。


--------------------------------------------------------------------------
java交流群:81552084
--------------------------------------------------------------------------

猜你喜欢

转载自guifan.iteye.com/blog/1389654