从 bcp 客户端收到一个对 colid x 无效的列长度。

批量插入数据的时候出现这个问题。

解决办法:某个数据的长度应该是大于这个数据对应的列的定义长度。

所以一一检查到底是那个列的长度超出了。

网络提供了这个种方法,可以查找具体是哪个列的长度超出了。

public void GetFiledSizeTest()
{
 string fileFullName = @"D:\GameLogs\2015-01-30_000000\Login.log";
 //每列的最大长度
 Dictionary<int, int> dicFieldLength = new Dictionary<int, int>();
 //每列的最大长度所在行号
 Dictionary<int, int> dicMaxFieldLenthRowNum = new Dictionary<int, int>();
 for (int i = 0; i < 11; i++)
 {
  dicFieldLength.Add(i, 0);
  dicMaxFieldLenthRowNum.Add(i, 0);
 }
 if (new FileInfo(fileFullName).Length > 0)
 {
  using (StreamReader sr = new StreamReader(fileFullName, Encoding.UTF8))
  {
   int rowNum = 0;
   while (sr.Peek() > -1)
   {
    string strRow = sr.ReadLine();
    rowNum++;
    object[] objRow = strRow.Split(‘,‘);
    for (int i = 0; i < objRow.Length; i++)
    {
       var len=objRow[i].ToString().Length;

       if (dicFieldLength[i] < len)
       {
        dicFieldLength[i] = len;
        dicMaxFieldLenthRowNum[i] = rowNum;
       }

    }
   }
  }
 }
}
时间: 2024-10-14 02:18:26

从 bcp 客户端收到一个对 colid x 无效的列长度。的相关文章

Mybatis:使用bean传值,当传入值为Null时,提示“无效的列类型”的解决办法

问题描述: 在使用mybatis对数据库执行更新操作时,parameterType为某个具体的bean,而bean中传入的参数为null时,抛出异常如下: org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property='pxh',

mybatis查询oracle ’无效的列索引‘和ORA-00911’无效的字符‘错误

1.Caused by: java.sql.SQLException: 无效的列索引 参考文献:http://bbs.csdn.net/topics/300179772 配置的sql语句写错了 select distinct '#{pkgName}' as pkgName, '#{appName}' as appName, version as versionName from stat_dim_version where appkey=#{appKey} order by version de

JFinal ActiveRecordException: 无效的列索引

代码: Db.update("delete from T_Xabc where ID= '?'","9900"); 现象: com.jfinal.plugin.activerecord.ActiveRecordException: java.sql.SQLException: 无效的列索引 at com.jfinal.plugin.activerecord.DbPro.update(DbPro.java:279) at com.jfinal.plugin.activ

MyBatis 中无效的列类型 整形

在使用Mybatis时,不同的xml配置文件,有的会提示:无效的列类型: 通过观察,如果是参数是Map类型或者Java Object类型,如果Map或者Object里面的属性类型不一致,如有些属性是String类型,有些属性是Integer类型,那么MyBatis解析的时候,就会出现问题,类型无法识别. 当然,如果传入参数不是Map或者Java Object,而是多个参数列表的形式,如果参数类型一致,那么不会出现问题,如果参数类型不一致,如既有String类型,也有Integer类型,那么解析的

框架中无效的列类型异常分析

org.springframework.jdbc.UncategorizedSQLException: Error setting null for parameter #5 with JdbcType OTHER . Try setting a different JdbcType for this parameter or a different jdbcTypeForNull configuration property. Cause: java.sql.SQLException: 无效的

java.sql.SQLException: 无效的列索引

“无效的列索引”其实是个低级的错误,原因无非几个: 1.sql串的?号数目和提供的变量数目不一致: 例如:jdbcTemplate.update(sql, new Object[] {newState,oldState}); 如果sql里面有1个?号,Object[]送了2个,就会报错. 2.sql串里的?号书写不正确 英文?和中文?有时难以区分. 3.sql串的?号用''括了起来. 例如:sql="UPDATE abc SET abc.name='?' WHERE abc.id='?'&quo

MySQL插入数据时插入无效的列

1.错误描述 com.mysql.jdbc.exception:jdbc4.MySQLSyntaxErrorException:Unknown column 'man' in 'field list' 2.错误原因 数据库表中的字段:sno     sname    sage     ssex 插入数据时:          sno     sname    sage     man          本来是想插入ssex这个字段的值为"man",结果将man弄成了ssex字段名 3.

mybatis 无效的列类型

项目报错为: [FaultEvent fault=[RPC Fault faultString="org.springframework.jdbc.UncategorizedSQLException : Error setting null parameter. Most JDBC drivers require that the JdbcType must be specified for all nullable parameters. Cause: java.sql.SQLExceptio

【错误笔记】MyBatis SQLException: 无效的列类型: 1111

问题描述: org.springframework.jdbc.UncategorizedSQLException: Error setting null for parameter #1 with JdbcType OTHER . Try setting a different JdbcType for this parameter or a different jdbcTypeForNull configuration property. Cause: java.sql.SQLExceptio