Asp.net如何通过传参的方式向SQL中插入NULL值

Cool_xiaocao 2010-06-19 02:35:22

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应该怎么改呢
...全文
148 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
jekeywood 2010-06-20
  • 打赏
  • 举报
回复
[code=C#]
SqlParameter str = new SqlParameter("@str_insert", SqlDbType.VarChar, 50);
str.Value = DBNull.Value
/code]
lzk1018834925 2010-06-19
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 wuyq11 的回复:]
str_insert不在insert中
SqlParameter[] sqlParams = new SqlParameter[] {
new SqlParameter("@str_insert", required),
string.IsNullOrEmpty(str_insert)? new SqlParameter("@str_insert", DBNull.Value) : ……
[/Quote]
对头,就是这样,刚看你写的时候没看出来,一看到这里就看出来啦,学习啦...
wuyq11 2010-06-19
  • 打赏
  • 举报
回复
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)
};
QQ865926998 2010-06-19
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 xys_777 的回复:]
如果对str的value赋值null不知道行不行
SqlCommand cmd = new SqlCommand("insert into 表名(某字段名) values(@str_insert)", conn);
SqlParameter str = new SqlParameter("@str_insert", SqlDbType.VarChar, 50);
str.Value = nu……
[/Quote]进来帮顶下
happy664618843 2010-06-19
  • 打赏
  • 举报
回复
DBNull.Value
qq234121906 2010-06-19
  • 打赏
  • 举报
回复

str_insert=dbnull.value;
永生天地 2010-06-19
  • 打赏
  • 举报
回复
如果对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);
newdigitime 2010-06-19
  • 打赏
  • 举报
回复
字符型可以给参数赋值为DBNull.Value

str.Value = DBNull.Value;
IHandler 2010-06-19
  • 打赏
  • 举报
回复

String str_insert = "";
SqlParameter str = new SqlParameter("@str_insert", SqlDbType.VarChar, 50);
str.Value = str_insert == "" ? null : str_insert;
IHandler 2010-06-19
  • 打赏
  • 举报
回复
你要判断啊

SELECT ISNULL(字段,'NULL') FROM 表

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧