c# - SQL 删除语句不适用于从 dataGridView 选择行

标签 c# mysql datagridview

我正在尝试从链接到数据库中的表的 DataGridView 中删除选定的行。它指出以下错误代码。

enter image description here

对于我在这里出错的地方有什么想法吗?

删除按钮代码

private void DeleteExtraBtn_Click(object sender, EventArgs e)
{
    SqlConnection con = new SqlConnection(@"Data Source=(LocalDB)\v11.0; AttachDbFilename=C:\Users\Donald\Documents\Visual Studio 2013\Projects\DesktopApplication\DesktopApplication\Student_CB.mdf ;Integrated Security=True");
    con.Open();
    try
    {
        //Delete selected extra row    
        SqlCommand sda = new SqlCommand("Delete From Extra Where Extra_ID = @Extra_ID", con);
        sda.Parameters.AddWithValue("@ExtraID", extraGridView.CurrentRow.Cells[0]);
        sda.ExecuteNonQuery(); 

    }
    catch(Exception ex)
    {
        MessageBox.Show(ex.Message);
    }


    con.Close();
    loadExtraTable();
}

最佳答案

我没有看到您在任何地方执行该命令。

添加;

sda.ExecuteNonQuery();

此外,您引用的是单元格对象,而不是它的值。 另外,您引用 @ExtraID@Extra_ID

private void DeleteExtraBtn_Click(object sender, EventArgs e)
{
    SqlConnection con = new SqlConnection(@"Data Source=(LocalDB)\v11.0; AttachDbFilename=C:\Users\Donald\Documents\Visual Studio 2013\Projects\DesktopApplication\DesktopApplication\Student_CB.mdf ;Integrated Security=True");
    con.Open();
    try
    {
        //Delete selected extra row    
        SqlCommand sda = new SqlCommand("Delete From Extra Where Extra_ID = @ExtraID", con);
        sda.Parameters.AddWithValue("@ExtraID", extraGridView.CurrentRow.Cells[0].Value);
        sda.ExecuteNonQuery();
    }
    catch(Exception ex)
    {
        MessageBox.Show(ex.Message);
    }


    con.Close();
    loadExtraTable();
}

关于c# - SQL 删除语句不适用于从 dataGridView 选择行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36384972/

相关文章:

c# - 是否可以使用自定义属性来防止执行多个方法

C# ASP.Net Webforms - 字符串 - 静态与静态只读

mysql - 非常困难的 SQL 查询合一(mysql)

c# - 将 DataGridView 与 C# 和 MySQL 一起使用

c# - 如何将新添加的数据行从datagridview插入数据库?

c# - Visual Studio 2015 ASP.NET 身份与 Web 窗体(不是 ASP.NET MVC)

c# - Azure DocumentDB,使用 LINQ 在字典中搜索

python - pymysql(python3.5)INSERT后如何返回最后一个主键?

php - 使用包含日期的php变量搜索mysql date列

c# - 如何在 DataGridView 上使用右键单击上下文菜单?