none
varbinary(MAX)如何插入空值 RRS feed

  • 问题

  •  /*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(sqlconn);                 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);                 }             }

    2013年1月27日 12:28

答案

全部回复