C#中dataGridView控件中将鼠标选中行数据进行删除,同时对应MySQL数据也删除的方法

问题描述

欲将下图表格中的若干行数据在界面上删除,同时相应删除MySQL内的数据。本文所述的方法适用于单行或多行(相邻或分散)数据的删除~~~
在这里插入图片描述

解决思路+代码实现

解决思路

1.编写表内容删除的MySQL语句
2.获取鼠标选中行的编号
3.通过一个for循环依次将选中数据删除

代码实现

            //定义计数值
            int count = 0;
            try
            {
                //连接数据库,我这里连接数据库的方法是自己写的,方法因人而异
                connectMySQL();
                //for循环,dataGridView1.SelectedRows.Count为鼠标选中行的数目,一次for循环删除一行数据
                for (int i = 0; i < dataGridView1.SelectedRows.Count; i++)
                {
                    //获得i行的编号
                    int id = Convert.ToInt32(dataGridView1.SelectedRows[i].Cells[0].Value);
                    //编写数据库删除代码,这里还用到了动态变量,用于改变每次id值
                    string dataToDo3 = $"delete from student where id = {id}";
                    //创建MySqlCommand类用于SQL语句的执行
                    cmd = new MySqlCommand(dataToDo3, conn);
                    //定义x接收返回值SQL语句返回值,为0则为执行失败
                    int x=cmd.ExecuteNonQuery();
                    //执行判断
                    if (x == 0)
                    {
                        MessageBox.Show("删除失败");
                    }
                    //若成功则计数值+1
                    count = count + 1;
                }                
                //若计数值等于选中行的数目,代表成功完成所有行的删除
                if (count== dataGridView1.SelectedRows.Count)
                {
                    MessageBox.Show("删除成功");
                }
       
            }
            catch (Exception ex)
            {

                MessageBox.Show(ex.ToString());
            }
            finally
            {
                //这里的button2是刷新界面,因人而异,可忽略
                button2.PerformClick();
                //关闭数据库连接
                closeMySQL();
            }

运行结果

假设我要删除编号160、162、164三行数据
在这里插入图片描述
结果如下
在这里插入图片描述
这里展示了多行(分散)数据的删除,对于单行,其他多行情况下这个方法同样适用~
希望能帮到大家~~~

  • 6
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
### 回答1: 要在DataGridView控件添加数据,可以使用以下步骤: 1. 创建一个DataTable对象,用于存储数据。 2. 将数据添加到DataTable。 3. 将DataTable对象设置为DataGridView控件数据源。 以下是示例代码: // 创建一个DataTable对象 DataTable dt = new DataTable(); // 添加列 dt.Columns.Add("姓名", typeof(string)); dt.Columns.Add("年龄", typeof(int)); dt.Columns.Add("性别", typeof(string)); // 添加数据 dt.Rows.Add("张三", 20, "男"); dt.Rows.Add("李四", 25, "女"); dt.Rows.Add("王五", 30, "男"); // 将DataTable对象设置为DataGridView控件数据dataGridView1.DataSource = dt; 这样就可以在DataGridView控件显示添加的数据了。 ### 回答2: DataGridView控件是Windows Forms常用的控件之一,特别是用于显示数据集合时非常方便和易于扩展。在使用DataGridView控件的过程,一个常见和重要的需求是添加数据记录到控件DataGridView控件提供了多种方式来添加数据记录,可以根据实际需求选择不同的方法。以下介绍一些常用的方式和方法: 1. 直接添加数据 使用DataGridView控件的Rows属性,可以直接添加数据。例如: dataGridView1.Rows.Add("John", "Doe", 30); 2. 通过数据绑定添加数据 可以将数据集合绑定到DataGridView控件DataSource属性,然后通过DataSource添加数据。例如: List<Person> people = new List<Person>(); people.Add(new Person() { FirstName = "John", LastName = "Doe", Age = 30 }); dataGridView1.DataSource = people; 3. 使用BindingSource组件添加数据 BindingSource组件是一个提供数据绑定和导航功能的组件,可以通过它添加数据。例如: BindingSource dataSource = new BindingSource(); dataSource.Add(new Person() { FirstName = "John", LastName = "Doe", Age = 30 }); dataGridView1.DataSource = dataSource; 4. 通过数据适配器添加数据 可以使用数据适配器从数据获取数据,然后添加到DataGridView控件。例如: SqlDataAdapter adapter = new SqlDataAdapter(query, connectionString); DataTable dataTable = new DataTable(); adapter.Fill(dataTable); dataGridView1.DataSource = dataTable; 无论哪种添加数据的方式,都需要注意以下要点: 1. 确认DataGridView控件的列设置,以保证添加的数据与列类型和数量匹配; 2. 确认数据源的访问权限,以保证能正常获取和添加数据; 3. 确认数据添加成功后,需要刷新DataGridView控件,以显示最新的数据记录。 总之,在使用DataGridView控件添加数据时,应根据实际需求和数据源类型选择最适合的添加方法,并注意细节和异常处理。 ### 回答3: DataGridView控件是Windows Forms一个常用的数据展示和编辑控件,它可以用来展示数据表格,支持多种数据源,包括DataTable、BindingSource等。在使用DataGridView时,我们通常需要向其添加数据,这里我们将介绍几种添加数据的方式。 方法一:使用List或数组添加数据 当我们需要向DataGridView添加一些静态数据时,可以使用List或数组来添加。 1.首先,在设计界面上或代码创建一个空的DataGridView控件。 2.使用一个List或数组存储数据,例如: ``` List<string[]> dataList = new List<string[]>(); dataList.Add(new string[] {"John", "25", "Male"}); dataList.Add(new string[] {"Lucy", "20", "Female"}); ``` 3.设置DataGridView控件数据源,如下: ``` dataGridView1.DataSource = dataList; ``` 这样,DataGridView控件就会显示出我们添加的数据方法二:使用DataTable添加数据 当我们需要动态地添加和更改数据时,可以使用DataTable来添加。DataTable可以存储多数据,每数据包含多个列,可以支持编辑、排序等功能。 1.创建一个DataTable,例如: ``` DataTable dt = new DataTable("MyDataTable"); dt.Columns.Add("Name", typeof(string)); dt.Columns.Add("Age", typeof(int)); dt.Columns.Add("Gender", typeof(string)); ``` 2.通过AddRows方法DataTable添加数据,例如: ``` dt.Rows.Add("John", 25, "Male"); dt.Rows.Add("Lucy", 20, "Female"); ``` 3.设置DataGridView控件数据源为DataTable,如下: ``` dataGridView1.DataSource = dt; ``` 方法三:使用BindingSource添加数据 BindingSource是一种数据源,可以用来将多个控件或组件绑定到同一个数据源,方便控制数据的显示和编辑。 1.创建一个BindingSource,例如: ``` BindingSource bs = new BindingSource(); ``` 2.通过Add方法向BindingSource添加数据,例如: ``` bs.Add(new { Name = "John", Age = 25, Gender = "Male" }); bs.Add(new { Name = "Lucy", Age = 20, Gender = "Female" }); ``` 3.设置DataGridView控件数据源为BindingSource,如下: ``` dataGridView1.DataSource = bs; ``` 通过以上三种方法,我们可以向DataGridView控件添加数据。不同的方法适用于不同的场景,我们可以根据实际需求选择适合自己的方法

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值