varbinary(MAX)如何插入空值

寂寞沙洲 2013-01-28 09:37:45
/*photo字段是varbinary(MAX)类型,如果用户未选择文件,应该插入空值,但不知如何写代码?尝试了,用null不行,用DBNull.Value(会导致不是空值)也不行。
数据库中的对应字段已设置,允许为空。 */
using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["db"].ConnectionString))
{
String sql = "insert into emp(name,age,photo) values(@name,@age,@photo)";
SqlCommand cmd = new SqlCommand(sql, conn);
cmd.Parameters.AddWithValue("@name", textBox1.Text);
cmd.Parameters.AddWithValue("@age", Convert.ToInt32(textBox2.Text));
byte[] b;
if (textBox3.Text != "")//用户选择了图像文件
{
b = File.ReadAllBytes(textBox3.Text);
cmd.Parameters.AddWithValue("@photo", b);
}
else
{
//如果用户未选择文件,应该插入空值,但不知如何处理? }


conn.Open();
try
{
cmd.ExecuteNonQuery();
}
catch (Exception ex)
{

MessageBox.Show(ex.Message);
}

}
...全文
212 3 点赞 打赏 收藏 举报
写回复
3 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
只在此山中 2013-01-29
System.Data.SqlTypes.SqlBinary.Null
  • 打赏
  • 举报
回复
寂寞沙洲 2013-01-29
System.Data.SqlTypes.SqlBinary.Null,可以,谢谢!给分了!
  • 打赏
  • 举报
回复
strife013 2013-01-28
用""这个不行吗
  • 打赏
  • 举报
回复
相关推荐
发帖
C#
加入

10.6w+

社区成员

.NET技术 C#
申请成为版主
帖子事件
创建了帖子
2013-01-28 09:37
社区公告

让您成为最强悍的C#开发者