使用C#删除datagridview和数据库中的行

Posted

技术标签:

【中文标题】使用C#删除datagridview和数据库中的行【英文标题】:Delete row in datagridview and database with C# 【发布时间】:2021-02-22 06:58:48 【问题描述】:

我制作了一个数据库和一个带有 datagridview 的程序来显示数据库内容。 现在我想制作一个按钮,让用户删除一行并在数据库中也删除它。

我尝试了在 *** 中找到的以下解决方案:How to delete row datagrid..

但我收到以下错误:

错误告诉我找不到类型SqlConnection

我在这里链接的整个代码:Pastebin

        private void button5_Click(object sender, EventArgs e)
    
        if (dataGridView1.SelectedRows.Count == 0)
            return;

        string sql = "DELETE FROM ticket.support WHERE ID = @rowID";

        using (SqlConnection myConnection = new SqlConnection("...."))
        using (SqlCommand deleteRecord = new SqlCommand(sql, myConnection))
        
            myConnection.Open();

            int selectedIndex = dataGridView1.SelectedRows[0].Index;
            int rowID = Convert.ToInt32(dataGridView1[0, selectedIndex].Value);

            deleteRecord.Parameters.Add("@rowID", SqlDbType.Int).Value = rowID;
            deleteRecord.ExecuteNonQuery();

            dataGridView1.Rows.RemoveAt(selectedIndex);
        

【问题讨论】:

我想你错过了参考Imports System.Data.SqlClient 我应该把参考放在哪里? 你应该放在这个using System.Windows.Forms;下,并使用 using 代替 import 您需要添加 dll 引用。参考这个链接:docs.microsoft.com/en-us/dotnet/api/… 【参考方案1】:

您需要添加对 System.Data.SqlClient 的引用。

在 Visual Studio 中,您可以展开项目,右键单击引用并单击添加引用,导航到实际引用并将其添加到项目中。见:https://docs.microsoft.com/en-us/visualstudio/ide/managing-references-in-a-project?view=vs-2019

另见:https://docs.microsoft.com/en-us/visualstudio/ide/how-to-add-or-remove-references-by-using-the-reference-manager?view=vs-2019

如果缺少参考,您可以通过NuGet Package Manager 下载。

【讨论】:

以上是关于使用C#删除datagridview和数据库中的行的主要内容,如果未能解决你的问题,请参考以下文章

c# winform datagridview界面上的行删了,但datagridview数据源没有同步如何解决

c#在datagridview中删除指定行并更新到数据库

从datagridview值中删除数据库中的行

C#中如何对datagridview 表格中的数据进行筛选,查找包含某个字段的行数据,求范例代码 感谢啊。

c# 获取dataGridView选中行的行数

从datagridview C#中删除数据库中的一行