【发布时间】:2015-03-15 10:39:31
【问题描述】:
我目前在学校开始使用 asp.net C#,现在他们希望我将数据插入 SQL Server。现在我使用这段代码到目前为止,但是当我尝试向数据库中添加一些东西时,我得到了错误:
SqlException 未被用户代码处理
System.Data.dll 中出现“System.Data.SqlClient.SqlException”类型的异常,但未在用户代码中处理
附加信息:列名或提供的值的数量与表定义不匹配。
谁能解释我在这里做错了什么?
提前致谢。
弗雷德。
public partial class AddMovie : System.Web.UI.Page
{
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["VideoStoreConnectionString"].ConnectionString);
protected void Page_Load(object sender, EventArgs e)
{
con.Open();
}
protected void Button1_Click(object sender, EventArgs e)
{
SqlCommand cmd = new SqlCommand("INSERT INTO dbo.Movie values('" + txtmovie.Text + "')", con);
cmd.ExecuteNonQuery();
con.Close();
Label1.Visible = true;
Label1.Text = "Your Movie is Stored Successfully!";
txtmovie.Text = "";
}
}
【问题讨论】:
-
你能告诉我们你的表的定义吗?如果您的列没有默认值(例如自动递增的主键列),则会引发此错误。
-
请见Bobby Tables,请永远不要打开来自
Page_Load的连接,请使用using进行连接和命令。至于实际问题,请参阅insert的语法,除非您的表只有一列,否则请提供您插入的列名列表。
标签: c# sql asp.net sql-server