将数据类型 varchar 转换为 numeric 时出错。 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Data.SqlClient.SqlException: 将数据类型 varchar 转换为 numeric 时出错。源错误: 
行 260: Open();
行 261: myCommand = new SqlCommand(str_Sql,myConnection);
行 262: myCommand.ExecuteNonQuery();
行 263: myCommand.Dispose();
行 264: Close();
 源文件: F:\WWWroot\public\myDb.cs    行: 262 

解决方案 »

  1.   

    str_Sql 的内容是什么?你的错误,应该是 数据库中的 字段类型 和 传入的值不匹配
      

  2.   

    可能性,应该蛮低的.
    因为我的是把这个执行语句做在一个类的方法里,
    public void ExeSql(string str_Sql)
    {   
    Open();
    myCommand = new SqlCommand(str_Sql,myConnection);
    myCommand.ExecuteNonQuery();
    myCommand.Dispose();
    Close();
    }之前所有调用这个类的方法的SQL语句都没问题,,而且程序运行了快一年了,昨天不知道改什么东东了,所有的调用这个类的这个方法的都提示这个错误,,唉...........请大家出出主意,我要吐血了.
      

  3.   

    可能是数据库某字段为数字型,你的SQL语句插入时的value为非数字型,导致无法转化
      

  4.   

    不可能,,以前所有的SQL语句,调用这个类方法,都很正常,现在突然间所有的SQL语句,调用这个语句都出现这个问题,,我想问题绝对不会出在SQL语句身在
      

  5.   

    将数据类型 varchar 转换为 numeric 时出错。 
      

  6.   

    你先别说这不可能那不可能。先跟踪到这儿,把sql语句拷出来到sqlserver查询分析器里执行一下看看有没有错误。如果有错误,那就看看涉及到哪个字段不对。如果没有错误,那说明你的连接可能有问题。
      

  7.   

    嗯..把那个sql 语句单独放在查询分析器里执行也出现这个提示可是蛮奇怪的.我又没改过这些SQL语句,以前一直可以执行的,,而且那个被插入数据的表,也只有varchar类型,而没有numeric类型..例如这条sql:insert tcourtype(sortCode,sortName,sortTaxis,uplevelCode,sortPic,itsEnd,extraInfo) values('20050928134130','sdfsdf','','20050319112142','','0','')
    而tcourtype的各列的类型为:
    sortCode(varchar )
    sortName(varchar )
    sortTaxis(decimal(2.0))
    uplevelCode(varchar )
    sortPic(nvarchar )
    itsEnd(nvarchar )
    extraInfo(text)
      

  8.   

    insert tcourtype(sortCode,sortName,sortTaxis,uplevelCode,sortPic,itsEnd,extraInfo) values('20050928134130','sdfsdf','','20050319112142','','0','')
    这明显就是 SQL 的问题啊, sortTaxis 是 Decimal 类型,而 SQL INSERT 时却用引号,这……??
      

  9.   

    insert tcourtype(
    sortCode        , sortName, sortTaxis,uplevelCode     ,sortPic,itsEnd,extraInfo) values(
    '20050928134130','sdfsdf' , ''       ,'20050319112142',''     ,'0'    ,''      )你比较一下吧,晕死