public void Insert()
        {
            string str_insert = "";
            SqlConnection conn = new SqlConnection("数据库连接字符,这里我不写了");
            SqlCommand cmd = new SqlCommand("insert into 表名(某字段名) values(@str_insert)", conn);
            SqlParameter str = new SqlParameter("@str_insert", SqlDbType.VarChar, 50);
            str.Value = str_insert;
            cmd.Parameters.Add(str);
            conn.Open();
            cmd.ExecuteNonQuery();
            cmd.Dispose();
            conn.Close();
        }如果字符串str_insert是""的话,数据库字段就什么也没有显示出来
如果我想显示为NULL那str_insert应该怎么改呢

解决方案 »

  1.   

    你要判断啊SELECT ISNULL(字段,'NULL') FROM 表
      

  2.   


    String str_insert = "";
    SqlParameter str = new SqlParameter("@str_insert", SqlDbType.VarChar, 50);
    str.Value = str_insert == "" ? null : str_insert;
      

  3.   

    字符型可以给参数赋值为DBNull.Value

    str.Value = DBNull.Value;
      

  4.   

    如果对str的value赋值null不知道行不行
    SqlCommand cmd = new SqlCommand("insert into 表名(某字段名) values(@str_insert)", conn);
    SqlParameter str = new SqlParameter("@str_insert", SqlDbType.VarChar, 50);
    str.Value = null;
    cmd.Parameters.Add(str);如果不行,就不用传递参数方法了,直接拼接sql字串
    str_insert = str_insert == "" ? "null" : "'"+str_insert+"'"
    SqlCommand cmd = new SqlCommand("insert into 表名(某字段名) values("+str_insert+")", conn);
      

  5.   

    str_insert不在insert中
    SqlParameter[] sqlParams = new SqlParameter[] {
      new SqlParameter("@str_insert", required),
      string.IsNullOrEmpty(str_insert)? new SqlParameter("@str_insert", DBNull.Value) : new SqlParameter("@str_insert", str_insert)
    };
      

  6.   

    [code=C#]
    SqlParameter str = new SqlParameter("@str_insert", SqlDbType.VarChar, 50);
    str.Value = DBNull.Value
    /code]