SqlParameter[] parameters = {
new SqlParameter("@a", SqlDbType.VarChar,7),
new SqlParameter("@b", SqlDbType.VarChar,10),
new SqlParameter("@c", SqlDbType.VarChar,10),
new SqlParameter("@d", SqlDbType.Decimal,9),
new SqlParameter("@e", SqlDbType.Decimal,9)
};parameters[0].Value = "1";
parameters[1].Value = "2";
parameters[2].Value = "3";
parameters[3].Value = ???;(这里我想往数据库中插入null)
parameters[4].Value = ???;(这里我想往数据库中插入null)???处该如何负值,直接写null和DBNull.Value试过不可以d和e允许为空
想实现的结果是
a   b   c   d   e
1   2   3   null  null

解决方案 »

  1.   

    把4、5列生成允许NULL然后插入时不对此2列赋值
      

  2.   

    因为用户录入的是一个标单,里面有很多条数据如果按照你的方法,我要根据用户录入的情况每条记录都要生成一个SQL(参数)然后再给各个参数负值,能不能有更直接更方便的方法
      

  3.   

    指定
    parameters[4].IsNullable = true;
      

  4.   

    不赋值是不可以的,不赋值是空引用null,不能表示数据库的空值
      

  5.   

    viena(维也纳nn木人 [IQ=50,EQ<0]) 没有理解你的意思,能说的明白一些吗?
      

  6.   

    数据库空值?system.dbnull?直接设这个不可以吗?
      

  7.   

    parameters[3].Value = System.DBNull;
      

  8.   

    parameters[3].Value = System.DBNull.Value;
    parameters[4].Value =System.DBNull.Value;
      

  9.   

    parameters[3].Value = System.DBNull;
    这个肯定是不可以的,因为DBNull是个类
    parameters[3].Value = System.DBNull.Value;
    parameters[4].Value =System.DBNull.Value;
    这个我试过不好使