您的位置:首页 > 数据库 > Oracle

ORACLE导出序列

2012-02-06 19:49 183 查看
最近遇到oracle导出序列时有问题(即序列的当前值和数据库中一些表的ID最大值不一致,我们的数据库表的主键是从序列中取的),需要重新导入序列,发现exp不能单独导出序列,由于数据量庞大,所以又不想再导一遍数据。在网上搜索了一下找到一个比较好的办法:
第一步:在原数据库上执行如下语句

select 'create sequence username.'|| 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='username';

执行此操作后会生成一堆创建序列的语句。

第二步:删除新数据库的序列,然后执行第一步生成的一堆Sql语句即可搞定
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: