今天在使用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转换,又是一个使用数据泵的优势。

相关文章:

  • 2021-07-18
  • 2022-12-23
  • 2022-12-23
  • 2021-12-16
  • 2021-09-17
  • 2021-05-27
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-03-07
  • 2022-12-23
  • 2022-02-03
  • 2021-11-12
  • 2021-07-14
  • 2021-08-09
相关资源
相似解决方案