guangtouhaky
2015-01-31 07:08
采纳率: 21.8%
浏览 2.1k

c#连接数据库删除数据

贴上代码。问题是能执行,但是数据删除不了。数据库连接正常,能查询增加数据。
try
{
con = new SqlConnection("server=.\sqlexpress;integrated security=true;database=master;");
con.Open();
cmd = new SqlCommand("delete from [table_outside] where 展项名称 = '@disname'",con);
cmd.Parameters.AddWithValue("@disname", "58寸触摸一体机");
cmd.ExecuteNonQuery();
con.Close();
MessageBox.Show("成功删除");
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
MessageBox.Show("查找数据失败,请检查数据库连接是否正常"+ex.Message);
}

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

9条回答 默认 最新

  • IT_Scholar 2015-01-31 09:24
    已采纳

    cmd = new SqlCommand("delete from [table_outside] where 展项名称 = '@disname'",con);

    '@disname' 参数错误,不需要单引号

    打赏 评论
  • bdmh 2015-01-31 07:33

    是你的参数化查询用错了,sql中不要再带引号了

    打赏 评论
  • bdmh 2015-01-31 07:34

    where 展项名称 = @disname

    打赏 评论
  • guangtouhaky 2015-01-31 07:41

    不带引号也试过了,也不行

    打赏 评论
  • AcesLi 2015-01-31 08:08

    尝试将参数加上类型Nvarchar

    打赏 评论
  • guangtouhaky 2015-01-31 08:20

    数据库的数据是Nvarchar,C#有这种类型么?

    打赏 评论
  • AcesLi 2015-01-31 08:25

    System.Data.SqlDbType.NVarChar

    打赏 评论
  • 知足常乐小三 2015-01-31 08:59

    cmd = new SqlCommand("delete from [table_outside] where 展项名称 = '@disname'",con);

    '@disname' 参数错误,不需要单引号

    打赏 评论
  • 疯子要来了 2015-01-31 12:36

    你查看代码是不是正常运行。
    是不是只运行了MessageBox.Show("成功删除"); 这句,可以调试一下

    打赏 评论

相关推荐 更多相似问题