有两台电脑,一个是windows2008 32bit的,安装了oracle 11.2.0.3的32bit的
另一台电脑是windows2008R2 64bit的,安装了oracle client 11.2.0.3的32bit的
这两者工作的很好现在,有一个第三台电脑windows2008R2 64bit的,安装了oracle client 11.2.0.1
程序运行却发生了如下的错误,我确定第二台电脑和第三胎电脑仅仅客户端版本不一样,其他都一样
 
ORA-12899: value too large for column "user1"."tableName"."fieldName" (actual: 2001, maximum: 2000)
 
什么原因?怎么修改?
 谢谢

解决方案 »

  1.   

    [oracle@10gR2 ~ $]oerr ora 12899
    12899, 00000, "value too large for column %s (actual: %s, maximum: %s)"
    // *Cause: An attempt was made to insert or update a column with a value
    //         which is too wide for the width of the destination column.
    //         The name of the column is given, along with the actual width
    //         of the value, and the maximum allowed width of the column.
    //         Note that widths are reported in characters if character length
    //         semantics are in effect for the column, otherwise widths are
    //         reported in bytes.
    // *Action: Examine the SQL statement for correctness.  Check source
    //          and destination column data types.
    //          Either make the destination column wider, or use a subset
    //          of the source column (i.e. use substring).按上面的步骤检查一下
    1)Examine the SQL statement for correctness
    2)Check source and destination column data types
    3)Either make the destination column wider, or use a subset of the source column 
      

  2.   


    你的sql语句发出来看看 
    是不是客户端程序用了in()操作导致的
      

  3.   

    这是一个第三方应用程序,安装的时候出错,然后我尝试了一下,再sql developer里面写了一条语句插入到一个test表(设置了列宽),插入一个汉字,确实出现相同的错误