我最近要把数据导入到SQL数据库,我想批量的插入到数据库, 我是先把数据存入到DataSet 中,然后一个循环,一行一行的插入,但是有的时候数据是空值,如果是char类型可以为空,能插入,但是如果是其他类型的,比如是decimal类型的,就不能插入NULL了,谁知道怎么办啊,请高手指教,谢谢了

解决方案 »

  1.   

    我现在的语句是这样的,
     insert  into xx (aa,bb)values('"+Convert.ToDecimal(dataset.table[0].Rows[i]['dataset中的一个字段'])+"')如过是NULL就没有办法转化。不知道这个怎么处理。
      

  2.   

    如果 dataset.table[0].Rows[i]['dataset中的一个字段'] 可能为null, 就要先做判断,再拼sql语句.
    这样:
    insert  into xx (aa,bb)values('"+(dataset.table[0].Rows[i]['dataset中的一个字段']==null?"null":Convert.ToDecimal(dataset.table[0].Rows[i]['dataset中的一个字段']))+"')
      

  3.   

    错误 1 无法确定条件表达式的类型,因为“string”和“decimal”之间没有隐式转换 C:\Documents and Settings\wl\My Documents\Visual Studio 2005\Projects\数据转换\数据转换\Form1.cs 75 173 数据转换