问题描述
嘿汤姆,
考虑以下测试场景:
1.创建序列
连接到:
Oracle数据库12c标准版版本12.1.0.2.0-64位生产
SQL> create sequence test_seq开始,100增量为10;
2.在表中使用序列作为默认值
创建表test_tbl
(
col1数字默认测试 _ seq.Nextval,
col2 varchar2(30)
);
一切都很好,直到这里,当我进行模式的导出和导入时,问题就来了。
3.导出架构
expdp系统/管理器转储文件 = test.dmp日志文件 = exp_test.log模式 = test_km
4.导入架构
impdp系统/管理器转储文件 = 测试。dmp日志文件 = imp_test.log remap_schema = test_km: 测试
现在,如果我在同一个SID中导入,我看到创建的表 (通过导入) 具有DDL,如下所示:
创建表测试。TEST_TBL
(
COL1数字默认为 “TEST_KM”。“TEST_SEQ”。“NEXTVAL”,
COL2 VARCHAR2(30 CHAR)
);
Why TEST_KM.TEST_SEQ ??
它应该是TEST.TEST_SEQ,正如您在导入中注意到的那样,我将架构从test_km重新映射到测试。
如果我在其他sid上执行导入,则表创建将失败并显示错误
ORA-39083: 对象类型表: “TEST”。“TEST_TBL” 创建失败,错误:
ORA-02289: 序列不存在
失败的sql是:
创建表 “TEST”。“TEST_TBL” (...)
您能否让我知道我们如何执行具有默认sequence_name.nextval的表的导入,并使表的默认序列指向该架构中创建的序列。
我在两个不同的sid中导出和导入,并得到上面的ORA错误。
提前谢谢。
基山
考虑以下测试场景:
1.创建序列
连接到:
Oracle数据库12c标准版版本12.1.0.2.0-64位生产
SQL> create sequence test_seq开始,100增量为10;
2.在表中使用序列作为默认值
创建表test_tbl
(
col1数字默认测试 _ seq.Nextval,
col2 varchar2(30)
);
一切都很好,直到这里,当我进行模式的导出和导入时,问题就来了。
3.导出架构
expdp系统/管理器转储文件 = test.dmp日志文件 = exp_test.log模式 = test_km
4.导入架构
impdp系统/管理器转储文件 = 测试。dmp日志文件 = imp_test.log remap_schema = test_km: 测试
现在,如果我在同一个SID中导入,我看到创建的表 (通过导入) 具有DDL,如下所示:
创建表测试。TEST_TBL
(
COL1数字默认为 “TEST_KM”。“TEST_SEQ”。“NEXTVAL”,
COL2 VARCHAR2(30 CHAR)
);
Why TEST_KM.TEST_SEQ ??
它应该是TEST.TEST_SEQ,正如您在导入中注意到的那样,我将架构从test_km重新映射到测试。
如果我在其他sid上执行导入,则表创建将失败并显示错误
ORA-39083: 对象类型表: “TEST”。“TEST_TBL” 创建失败,错误:
ORA-02289: 序列不存在
失败的sql是:
创建表 “TEST”。“TEST_TBL” (...)
您能否让我知道我们如何执行具有默认sequence_name.nextval的表的导入,并使表的默认序列指向该架构中创建的序列。
我在两个不同的sid中导出和导入,并得到上面的ORA错误。
提前谢谢。
基山
专家解答
不幸的是,如MOS注释2060135.1中所讨论的,这是一个已知问题。它提供了以下解决方法:
1. excluding the affected objects from the import 2. using the sqlfile option to import the affected objects 3. amending the sqlfile script output to point to the correct objects before running it复制
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
【专家有话说第五期】在不同年龄段,DBA应该怎样规划自己的职业发展?
墨天轮编辑部
1327次阅读
2025-03-13 11:40:53
Oracle RAC ASM 磁盘组满了,无法扩容怎么在线处理?
Lucifer三思而后行
802次阅读
2025-03-17 11:33:53
Oracle+Deepseek+Dify 实现数据库数据实时分析
bicewow
728次阅读
2025-03-06 09:41:49
2月“墨力原创作者计划”获奖名单公布
墨天轮编辑部
469次阅读
2025-03-13 14:38:19
Oracle 如何修改 db_unique_name?强迫症福音!
Lucifer三思而后行
365次阅读
2025-03-12 21:27:56
Oracle DataGuard高可用性解决方案详解
孙莹
318次阅读
2025-03-26 23:27:33
Oracle分区和执行计划相关的几个问题
听见风的声音
311次阅读
2025-03-07 08:51:42
数据库管理-第299期 数据库是否需要定期重启(20250306)
胖头鱼的鱼缸
253次阅读
2025-03-06 09:09:35
切换Oracle归档路径后,不能正常删除原归档路径上的归档文件
dbaking
252次阅读
2025-03-19 14:41:51
风口浪尖!诚通证券扩容采购Oracle 793万...
Roger的数据库专栏
246次阅读
2025-03-24 09:42:53