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应该怎么改呢
String str_insert = "";
SqlParameter str = new SqlParameter("@str_insert", SqlDbType.VarChar, 50);
str.Value = str_insert == "" ? null : str_insert;
如
str.Value = DBNull.Value;
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);
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)
};
SqlParameter str = new SqlParameter("@str_insert", SqlDbType.VarChar, 50);
str.Value = DBNull.Value
/code]