C# 从C窗体向数据库中插入行
我正在尝试向数据库中添加新行。上面的代码是正确的,没有错误,它显示try语句,但没有将行插入数据库。任何解决方法。您的insert语句错误,缺少到。执行以下任一操作:C# 从C窗体向数据库中插入行,c#,database,insert,C#,Database,Insert,我正在尝试向数据库中添加新行。上面的代码是正确的,没有错误,它显示try语句,但没有将行插入数据库。任何解决方法。您的insert语句错误,缺少到。执行以下任一操作: String ConString = @"DataSource=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\BizContact.mdf;Integrated Security=True;User Instance=True"; SqlConnection cn = new Sq
String ConString = @"DataSource=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\BizContact.mdf;Integrated Security=True;User Instance=True";
SqlConnection cn = new SqlConnection(ConString);
try
{
cn.Open();
MessageBox.Show("connect");
}
catch (Exception)
{
MessageBox.Show("Did not connect");
}
SqlCommand cmd = new SqlCommand("insert tableNote values (@UserName,@Note)",cn);
cmd.Parameters.AddWithValue("@UserName", textBox1.Text);
cmd.Parameters.AddWithValue("@Note", textBox2.Text);
try
{
int res = cmd.ExecuteNonQuery();
if (res > 0)
{
MessageBox.Show("insert");
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
cn.Close();
}
或
打开Sql Profiler并观察它执行命令,然后尝试将该命令重播到Sql Management Studio中。更有可能的是,它会向您显示查询的格式有点不正确,以至于它没有成功地执行任何操作。尝试完整的T-SQL语句
insert into tableNote (column_name1, column_name2) values (@UserName,@Note)
还可以通过使用状态来处理SqlConnection
"INSERT INTO table_name (userColumn, noteColumn) VALUES (@UserName, @Note)"
请尝试打印res的值。该值应为1,因为它提供了插入的行数。在项目目录中,可能有BizContact.mdf的多个副本。请检查所有副本以查找插入的记录。尝试使用SQL Profiler查看生成的查询,并尝试在SSMS中运行该查询。
"INSERT INTO table_name (userColumn, noteColumn) VALUES (@UserName, @Note)"
using(SqlConnection cn = new SqlConnection(ConString))
{
//....
}