无法将值NULL插入列'UserId',表中

时间:2012-08-02 08:36:19

标签: c# asp.net sql

尝试插入在我的UPDATE SQL语句下编辑的注释用户时遇到此错误。由于我的UserId是uniqueIdentifier,我真的不知道如何解决这个错误。

错误显示:

Cannot insert the value NULL into column 'UserId', table 

我的.cs代码是:

 int CommentID = int.Parse(ListView1.DataKeys[e.ItemIndex].Value.ToString());
    ListViewItem item = ListView1.Items[e.ItemIndex];
    TextBox Title = (TextBox)item.FindControl("Title");
    TextBox commentContent = (TextBox)item.FindControl("commentContent");

    string connectionString = ConfigurationManager.ConnectionStrings["ASPNETDBConnectionString1"].ConnectionString;
    using (SqlConnection conn = new SqlConnection(connectionString))
    {
        string sql = "Update Comments set Title = @Title, commentContent=@commentContent where CommentID = @CommentID";
        using (SqlCommand cmd = new SqlCommand(sql, conn))
        {
            cmd.Parameters.AddWithValue("@Title", TextBox1.Text.Trim());
            cmd.Parameters.AddWithValue("@commentContent", TextBox2.Text.Trim());
            cmd.Parameters.AddWithValue("@CommentID", CommentID);
            conn.Open();
            cmd.ExecuteNonQuery();
            conn.Close();
        }
    }

3 个答案:

答案 0 :(得分:1)

我认为表中的UserID列具有NOT NULL约束。检查表模式。

答案 1 :(得分:1)

在我看来,UserID有一个非空约束。检查数据库中的内容。

答案 2 :(得分:0)

我认为UserId是你的外键,你必须定义一个外键

注释包含UserId作为外键,您必须设置UserId,因为键不能为空