欢迎进入oracle社区论坛,与200万技术人员互动交流 >>进入 先从另外一服务器(9206) exp 一用户,之后imp 到10,然后使用10的expdp 导出数据后,删除该用户,再impdp, 此时出现错误。 处理对象类型 schema_export/function/function ora-39083: 对象类型 funct
欢迎进入oracle社区论坛,与200万技术人员互动交流 >>进入
先从另外一服务器(9206) exp 一用户,之后imp 到10,然后使用10的expdp 导出数据后,删除该用户,再impdp, 此时出现错误。
处理对象类型 schema_export/function/function
ora-39083: 对象类型 function 创建失败, 出现错误:
ora-06502: pl/sql: 数字或值错误
ora-06512: 在 sys.kupw$worker, line 11729
ora-06502: pl/sql: 数字或值错误 : 字符串缓冲区太小
失败的 sql 为:
create function study.fun_salerstrutest ( --用途:促销员结构分析查询
vdept number, ----事业部
vtop number, ----顶点机构
vsdate varchar2, ----开始日期
vedate varchar2, ----结束日期
vsalerstate number, ----促销员状态:所有:-1,在职:1,离职:0 as
vorg2 number, ----大区 1或0 表选与
ora-39083: 对象类型 function 创建失败, 出现错误:
ora-06502: pl/sql: 数字或值错误
ora-06512: 在 sys.kupw$worker, line 11729
ora-06502: pl/sql: 数字或值错误 : 字符串缓冲区太小
失败的 sql 为:
create function study.fun_test (
vdept number, ----事业部
vtop number, ----顶点机构
vproducttype number, ----产品类型
vsdat varchar2, ----开始日期
vedat varchar2) ----结束日期
return long
as
vbdate date := to_date(vsdat,'yyyy-mm-dd'); ----开始日期
vedate date :=
ora-06502: pl/sql: 数字或值错误 : 字符串缓冲区太小
ora-06502: pl/sql: 数字或值错误 : 字符串缓冲区太小
作业 sys.sys_import_schema_01 因致命错误于 16:10 停止
尝试了几回,都无法成功,几天后,再做一遍测试,此次操作和之前的类似,只是exp的时候,不带数据。测试结果如下:
. . 导出了 study.t_trackorgplan 0 kb 0 行
. . 导出了 study.t_tracksaleregionplan 0 kb 0 行
. . 导出了 study.userdata 0 kb 0 行
. . 导出了 study.userdepartment 0 kb 0 行
. . 导出了 study.usergroup 0 kb 0 行
. . 导出了 study.userorgright 0 kb 0 行
. . 导出了 study.userproductright 0 kb 0 行
. . 导出了 study.yearplan 0 kb 0 行
. . 导出了 study.yearplanproduct 0 kb 0 行
已成功加载/卸载了主表 study.sys_export_schema_01
******************************************************************************
study.sys_export_schema_01 的转储文件集为:
h:\temp\expdp\expdp_study_20050816.dmp
作业 study.sys_export_schema_01 已于 10:20 成功完成
f:\oracle\bin>impdp dumpfile=expdp_study_20050816.dmp logfile=impdp_study_20050816.log schemas=stu
dy userid=study/1
import: release 10.1.0.2.0 - production on 星期二, 16 8月, 2005 10:25
copyright (c) 2003, oracle. all rights reserved.
连接到: oracle database 10g enterprise edition release 10.1.0.2.0 - production
with the partitioning, olap and data mining options
已成功加载/卸载了主表 study.sys_import_schema_01
启动 study.sys_import_schema_01: dumpfile=expdp_study_20050816.dmp logfile=impdp_study_200508
16.log schemas=study userid=study/********
处理对象类型 schema_export/user
ora-31684: 对象类型 user:study 已存在
处理对象类型 schema_export/system_grant
处理对象类型 schema_export/role_grant
处理对象类型 schema_export/default_role
处理对象类型 schema_export/tablespace_quota
处理对象类型 schema_export/se_pre_schema_procobjact/procact_schema
处理对象类型 schema_export/sequence/sequence
处理对象类型 schema_export/table/table
处理对象类型 schema_export/table/table_data
. . 导入了 study.abctype 0 kb 0 行
. . 导入了 study.band 0 kb 0 行
. . 导入了 study.bigcust 0 kb 0 行
......
. . 导入了 study.userproductright 0 kb 0 行
. . 导入了 study.yearplan 0 kb 0 行
. . 导入了 study.yearplanproduct 0 kb 0 行
处理对象类型 schema_export/table/index/index
处理对象类型 schema_export/table/constraint/constraint
处理对象类型 schema_export/table/index/statistics/index_statistics
处理对象类型 schema_export/table/statistics/table_statistics
处理对象类型 schema_export/table/comment
处理对象类型 schema_export/package/package_spec
处理对象类型 schema_export/function/function
ora-39083: 对象类型 function 创建失败, 出现错误:
ora-06502: pl/sql: 数字或值错误
ora-06512: 在 sys.kupw$worker, line 11729
ora-06502: pl/sql: 数字或值错误 : 字符串缓冲区太小
失败的 sql 为:
create function study.fun_salerstrutest ( --用途:促销员结构分析查询
vdept number, ----事业部
vtop number, ----顶点机构
vsdate varchar2, ----开始日期
vedate varchar2, ----结束日期
vsalerstate number, ----促销员状态:所有:-1,在职:1,离职:0 as
vorg2 number, ----大区 1或0 表选与
ora-39083: 对象类型 function 创建失败, 出现错误:
ora-06502: pl/sql: 数字或值错误
ora-06512: 在 sys.kupw$worker, line 11729
ora-06502: pl/sql: 数字或值错误 : 字符串缓冲区太小
失败的 sql 为:
create function study.fun_test (
vdept number, ----事业部
vtop number, ----顶点机构
vproducttype number, ----产品类型
vsdat varchar2, ----开始日期
vedat varchar2) ----结束日期
return long
as
vbdate date := to_date(vsdat,'yyyy-mm-dd'); ----开始日期
vedate date :=
ora-06502: pl/sql: 数字或值错误 : 字符串缓冲区太小
ora-06502: pl/sql: 数字或值错误 : 字符串缓冲区太小
作业 study.sys_import_schema_01 因致命错误于 10:26 停止
f:\oracle\bin>
不知道是不是该版本的一个bug, 升级到10.1.0.4.0 再试,升级后测试,问题已依旧!
24-aug-05 05:55:14 gmt
.
issue clarification
====================
ora-39083: object type function failed to create with error:
ora-06502: pl/sql: numeric or value error
ora-06512: at sys.kupw$worker, line 11849
ora-06502: pl/sql: numeric or value error: character string buffer too small
eos (end of div)
.
issue verification
===================
verified the issue through tar update
eos (end of div)
.
data collected
===============
ora-39083: object type function failed to create with error:
ora-06502: pl/sql: numeric or value error
ora-06512: at sys.kupw$worker, line 11849
ora-06502: pl/sql: numeric or value error: character string buffer too small
failing sql is:
create function study.fun_test (
vdept number,
vtop number,
vproducttype number,
vsdat varchar2,
vedat varchar2)
return long
as
vbdate date := to_date(vsdat,'
processing object type
schema_export/package/compile_package/package_spec/alter_package_spec
processing object type schema_export/function/alter_function
ora-39083: object type alter_function failed to create with error:
ora-04043: object fun_salerstrutest does not exist
failing sql is:
alter function study.fun_salerstrutest compile plsql_optimize_level=
2 plsql_code_type= interpreted plsql_debug= false reuse settings
timestamp '2005-08-16:14:05:40'
ora-39083: object type alter_function failed to create with error:
ora-04043: object fun_test does not exist
failing sql is:
alter function study.fun_test compile plsql_optimize_level= 2
plsql_code_type= interpreted plsql_debug= false reuse settings timestamp
'2005-08-16:14:05:43'
eos (end of div)
.
cause determination
====================
the import datapump fails to import the procedure when the create procedure
statement includes multi-byte characters.
eos (end of div)
cause justification
====================
bug 4108939 - import procedure with data pump get ora-6502, fixed in 10.2 and
10.1.0.5
eos (end of div)
.
potential solution(s)
======================
install the 10.1.0.5 patchset when available (perhaps during the next autumn)
or
create manually these packages after the import
eos (end of div)
potential solution justification(s)
====================================
the patchset contains the fix of the bug
eos (end of div)
.
solution / action plan
=======================
create the function manually after the import
eos (end of div)