[terry笔记]IMPDP报错ORA-39083 Object type TYPE failed to create ORA-02304

本文讨论了在使用IMPDP导入Oracle数据库时遇到的OID重复错误问题,并提供了通过设置transform=oid:n来解决该问题的方法。此方法有助于避免在导入过程中出现ORA-39083错误。

今天在使用impdp导入的时候(同一数据库中转换schema),遇到了
ORA-39083: Object type TYPE failed to create with error:
ORA-02304: invalid object identifier literal
具体报错的sql是 CREATE TYPE "xx"."xxxxx"   OID '1J35J43H1J5H2JK3HJ52H3J45' AS OBJECT
此type无法创建成功,原因是OID重复,OID就是object id。


查看impdp help=y 可以使用一个参数:transform
 
TRANSFORM
Metadata transform to apply to applicable objects.
Valid transform keywords: SEGMENT_ATTRIBUTES, STORAGE OID, and PCTSPACE.
 
OID - If the value is specified as n, the assignment of the exported OID during the
creation of object tables and types is inhibited. Instead, a new OID is assigned.
This can be useful for cloning schemas, but does not affect referenced objects. The
default value is y.

这个参数默认是Y,如果改成N,那么导入的时候会把各个对象重新赋予新的OID。

transform=oid:n

这样,再用impdp导入的时候就不会出现
ORA-39083: Object type TYPE failed to create with error:
ORA-02304: invalid object identifier literal


注意:exp/imp不支持oid转换,又是一个使用数据泵的优势。

转载于:https://www.cnblogs.com/kkterry/p/3277354.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值