将NULL插入SQL Server数据库

时间:2017-05-08 18:47:42

标签: c# sql-server

我正在尝试创建一个INSERT INTO查询,该查询在表中创建值为null的值;但是,这不起作用。

这是代码:

cmd = new SqlCommand("INSERT INTO Questions ([Student_ID],[Teacher_ID],[Question],[Answer],[Answered]) VALUES (@Student_ID,@Teacher_ID,@Question,@Answer,@Answered)", con);

cmd.Parameters.AddWithValue("@Student_ID", FrmLogIn.User_ID);
cmd.Parameters.AddWithValue("@Teacher_ID", cmboxTeacherChoice.SelectedItem.ToString());
cmd.Parameters.AddWithValue("@Question", tbStudentQuestion.Text);
cmd.Parameters.AddWithValue("@Answer", null);
cmd.Parameters.AddWithValue("@Answered", 0);

当代码放入cmd.Parameters.AddWithValue("@Answer", null);而不是null时,此代码有效,但我需要此值为null。在数据库中,这个变量保存为nvarchar(MAX),并且允许空值,我做错了吗?请告诉我。

任何答案都表示赞赏,如果我不清楚请通知我,谢谢。

1 个答案:

答案 0 :(得分:5)

使用DBNull.Value代替null