C# ASP.NET MVC Insert语句插入数据库错误:提供的值的列名或数目与表定义不匹配
我正在ASP.NET MVC中创建博客,在向帖子添加评论时,尝试将C# ASP.NET MVC Insert语句插入数据库错误:提供的值的列名或数目与表定义不匹配,c#,sql,asp.net,asp.net-mvc,debugging,C#,Sql,Asp.net,Asp.net Mvc,Debugging,我正在ASP.NET MVC中创建博客,在向帖子添加评论时,尝试将插入数据库时出现以下错误: 提供的值的列名或数目与表定义不匹配 当异常发生时,我也检查了对象中的值,但是每个参数都填充了与模型类中定义的相同的数据类型 我已经检查了模型类和数据库结构,但没有发现问题 public class Comment { public int Id { get; set; } public int PostId { get; set; } public string Descrip
插入数据库时出现以下错误:
提供的值的列名或数目与表定义不匹配
当异常发生时,我也检查了对象中的值,但是每个参数都填充了与模型类中定义的相同的数据类型
我已经检查了模型类和数据库结构,但没有发现问题
public class Comment
{
public int Id { get; set; }
public int PostId { get; set; }
public string Description { get; set; }
public string UserId { get; set; }
public DateTime Timestamp { get; set; }
}
这是我的数据库表:
感谢您的帮助
谢谢 更改您的SQL语句
以包含列名:
INSERT INTO Comment
(PostId, Description, TimeStamp, UserId)
VALUES
(@PostId, @Description, @TimeStamp, @UserId)
在您的C#代码中:
在INSERT
语句中指定要写入的列这对我很有帮助!我已经在我的SQL语句中添加了Id和列名,这非常有效!谢谢!
command.CommandText = @"INSERT INTO Comment (PostId, Description, TimeStamp, UserId)
VALUES
(@PostId, @Description, @TimeStamp, @UserId)";