Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Oracle ORA-00604:递归SQL级别1发生错误ORA-06502:PL/SQL:数字或值错误:字符串缓冲区太小ORA-06512:第22行_Oracle_Plsql - Fatal编程技术网

Oracle ORA-00604:递归SQL级别1发生错误ORA-06502:PL/SQL:数字或值错误:字符串缓冲区太小ORA-06512:第22行

Oracle ORA-00604:递归SQL级别1发生错误ORA-06502:PL/SQL:数字或值错误:字符串缓冲区太小ORA-06512:第22行,oracle,plsql,Oracle,Plsql,使用imp在oracle 10G数据库中执行导入时,我收到以下错误: IMP-00017: following statement failed with ORACLE error 604: CREATE TABLE DASHBOARD_ADMINISTRATOR (ID NUMBER(19, 0) NOT NULL ENABLE, USER_NAME VARCHAR2(20) NOT NULL ENABLE, NAME VARCHAR2(50), FIRST_NAME VARCHAR2

使用imp在oracle 10G数据库中执行导入时,我收到以下错误:

IMP-00017: following statement failed with ORACLE error 604:
 CREATE TABLE DASHBOARD_ADMINISTRATOR
 (ID NUMBER(19, 0) NOT NULL ENABLE,
 USER_NAME VARCHAR2(20) NOT NULL ENABLE,
 NAME VARCHAR2(50), FIRST_NAME VARCHAR2(50));

IMP-00003: ORACLE error 604 encountered
ORA-00604: error occurred at recursive SQL level 1
ORA-06502: PL/SQL: numeric or value error: character string buffer too small
ORA-06512: at line 22
在TOAD中执行相同的操作时,即使我只尝试创建指定了1列的表,也会出现相同的错误,这更奇怪,因为我只有2行

创建名为DASHBOARD\u Administrator的表是可能的,DASHBOARD\u ADMINISTRATORR再次给出相同的错误

但是,当我切换名称中单词的位置时,效果很好

没有对tablename长度设置限制,因为几个导入的表具有更多的字符

我使用相同的转储文件导入到Oracle11g中,结果成功

有什么想法吗


谢谢您的帮助。

“字符串缓冲区太小”-可以尝试增加Varchar表。将数字(19,0)改为数字(19)——ID只是一个整数,它们没有昏迷,句号。在导入/导出各种场景中出现:)

“字符串缓冲区太小”-可能会尝试增加Varchar表。将数字(19,0)改为数字(19)——ID只是一个整数,它们没有昏迷,句号。在导入/导出各种场景中出现:)

欢迎使用SO!请回答您的问题并清理语法(去掉
,并以合理的方式包装行,这样我们就可以执行它,而不必手动删除换行符等)。还请解释您所说的“但是,当我改变这两个字时,它可以正常工作”的确切含义。最后,尝试将其缩小到一个范围(例如,删除存储条款)。还有一点需要注意的是:你到底为什么仍然使用
IMP
?这是一个遗留导入吗?
IMPDP
多年来一直是
IMP
的指定继承者。我知道,但导出是习惯性地使用exp完成的。我们将尽快开始使用expdp/IMPDP。但问题不是因为我使用了IMP,而是我在创建表时遇到了同样的问题在TOAD中手动。欢迎使用SO!请回答您的问题并清理语法(去掉
,以合理的方式包装行,这样我们就可以执行它,而不必手动删除换行符等)。还请解释您所说的“然而,当我改变这两个工作时,它工作正常”的确切含义.最后,试着把范围缩小到a(例如,去掉存储条款)。还有一点需要注意的是:你到底为什么仍然使用
IMP
?这是一个遗留导入吗?
IMPDP
多年来一直是
IMP
的指定继承者。我知道,但导出是习惯性地使用exp完成的。我们将尽快开始使用expdp/IMPDP。但问题不是因为我使用了IMP,而是我在创建表时遇到了同样的问题用手在蟾蜍身上。