oracle导出序列sequence

序列(sequence)是数据库不可分割的一部分,可是,oracle中,好像不能指定导出sequence的?

可以在备份中顺带导出,然后还原中顺带导入这个序列号,但只操作序列号是不行的。而且备份还原也太重量级了一点。

导出sequence是不可能导出的,这辈子都不可能导出的,但可以换个思路,生成SQL语句来间接导出就可以维持得了职业生涯这样子。

网上抄来,将cachesize去掉了,因为发觉会有0值,不知啥原因:

--chr(10) 回车符
--chr(13) 换行符
select 'drop sequence hydg.'|| SEQUENCE_NAME || ';'||chr(13)||'create sequence hydg.'|| SEQUENCE_NAME || ' minvalue '||MIN_VALUE||' maxvalue '||MAX_VALUE||'   
start with '||LAST_NUMBER||' increment by '||INCREMENT_BY||';' as sql
from dba_sequences where SEQUENCE_OWNER='HYDG';

注意SEQUENCE_OWNER的值为大写。

在源数据库运行此语句,即可得到该表空间下所有的sequence生成语句矣。复制之,到目标数据库里粘贴之,运行之,大业可成。

相关推荐
©️2020 CSDN 皮肤主题: 代码科技 设计师:Amelia_0503 返回首页