是不是该行记录太长
在buffer中不够装下尝试加大buffer targwjf% oerr exp 00001
00001, 00000, "data field truncation - column length=%lu, buffer size=%lu actua"
// *Cause: Export could not fit a column in the data buffer.
// *Action: Record the given size parameters and the accompanying messages and
// report this as an Export internal error to customer support. (Part
// of the table has been exported. Export will continue with the next
// table.)
stargwjf%
在buffer中不够装下尝试加大buffer targwjf% oerr exp 00001
00001, 00000, "data field truncation - column length=%lu, buffer size=%lu actua"
// *Cause: Export could not fit a column in the data buffer.
// *Action: Record the given size parameters and the accompanying messages and
// report this as an Export internal error to customer support. (Part
// of the table has been exported. Export will continue with the next
// table.)
stargwjf%
解决方案 »
- 两条简单sql语句的区别,求解释
- 求助:关于ORACLE函数问题
- oracle 怎么执行动态sql语句?
- oracle 经常报Fatal NI connect error 12537,connecting to:和TNS-12537:TNS:connecti
- 同样的sql查询出来的结果不一样。
- oracle 问题
- 请问left(xxx,3) 在Oracle中怎么用。。。。。。?
- 第一次运行SQLPLUS时,提示ORACLE initialization or shutdown in progress 是什么意思,应该怎么办??在线等
- 一个日期问题!!!
- oracle用户锁定问题
- 表的主码信息在oracle8那张表中能找到?
- 请问DELPHI+ORACLE可以,但VB+ORACLE可以吗?!(10分钟结帖)
1. NLS Settings
----------------------
This is the most common way in which to get these errors.You will probably hit this when:
+ Your database is created in a single byte characterset (for example
WE8ISO8859P1)
+ The NLS_LANG environment variable is set to UTF8 or a similar characterset
+ You've stored extended ASCII characters (like accented French characters etc.)
or other characters that take more than 1 byte to store in UTF8.
Solution 1
----------
Set the characterset in NLS_LANG to a single byte characterset that is correct
for your platform. There is no reason why this shouldn't be possible.2. Invalid data size
---------------------------
This is a less common reason for this error but occurrences have been seen.
For some reason you could have data of incorrect size in a varchar2 column.You can test if you're running into this in the following way:
+ Find out the size of the offending column
+ CREATE TABLE cp_table (col1 <as the offending column>);
+ INSERT INTO cp_table SELECT <offending column> FROM <offending table>;In this case you will get ORA-01401: inserted value too large for columnSolution 2
----------
We will have to store the data in columns that large enough to store the data.Examine the contents of this column in the main table by
SELECT dump(<offending column>) FROM main_table.As a result you will find some values in this column, which are larger than the
defined size for this column.Find out the value with maximum length in the column. Create a new table of the
same specifications as the original table but make sure the offending column has
got the correct size. Insert the rows from the original table into the copy.
1。NLS 设置
这是最有可能的一种
+ 你的数据库是单字节字符集的(例如:WE8ISO8859P1)+ NLS_LANG 环境变量设置为UTF8 或类似的字符集
+ You've stored extended ASCII characters (like accented French characters etc.)
or other characters that take more than 1 byte to store in UTF8.
你已经存入了扩展ASCII字符(比如法语等)或其它超过1个字节的字符在UTF8中
方法 1
----------
NLS_LANG设置是正确的。没有理由去改变
2. 无效的数据长度
---------------------------
这种可能性比较底,但也曾发生过,因为某种原因,错误长度的数据插入了VARCHAR2 类型的COLOUMN你可以这样测试:
+找出COLUMN的定义长度
+ CREATE TABLE cp_table (col1 <as the offending column>);
+ INSERT INTO cp_table SELECT <offending column> FROM <offending table>;如果你得到 ORA-01401: inserted value too large for column
那就证明错误存在。方法 2
----------
We will have to store the data in columns that large enough to store the data.我们必须将数据存放到足够大的COLUMN中检查COLUMN中的内容:SELECT dump(<offending column>) FROM main_table.你可以找出一些数据大于COLUMN的定义长度找出最大的数据长度,建新表,把原来的COLUMN长度改成合适的,把数据从旧表倒入新表