搜索
首页数据库mysql教程关于DataGridView控件通过dataset直接更新数据库

今天做了一个小功能,对一个数据库表中的信息直接进行增、删、改操作,用到了DataGridView控件。 功能描述:窗体加载时,查询出表中的内容,并绑定到DataGridView中显示。可以对表中的数据进行增/删、改操作。 开始用到了比较麻烦的方法,为DataGridView添加

今天做了一个小功能,对一个数据库表中的信息直接进行增、删、改操作,用到了DataGridView控件。
功能描述:窗体加载时,查询出表中的内容,并绑定到DataGridView中显示。可以对表中的数据进行增/删、改操作。
  开始用到了比较麻烦的方法,为DataGridView添加了contextMenuStrip,提供了三种方法。比较麻烦。下面是一部分代码:

1 privatevoid 删除ToolStripMenuItem_Click(object sender, EventArgs e)
2 {
3 int[] row =newint[dataGridView1.SelectedRows.Count]; //存储选定的行的索引号
4  int[] id =newint[dataGridView1.SelectedRows.Count]; //存储选定行的id号 用于删除时查询的条件
5  int count = dataGridView1.SelectedRows.Count; //存储开始选定了的行数
6  for (int j =0; j dataGridView1.SelectedRows.Count; j++) //利用循环将选定的行索引存入row【】数组中
7   {
8 row[j] = dataGridView1.SelectedRows[j].Index;
9 }
10 for (int i =0; i count; i++) //利用循环
11 {
12
13 dataGridView1.CurrentCell = dataGridView1[0, row[i]]; //设置当前活动的单元格的索引是【0,row【i】】,即所有选定行的第一列的值(Att_Id)
14 id[i] =Convert.ToInt32(dataGridView1.CurrentCell.Value);
15
16 }
17 bool yesno=false;
18 if (MessageBox.Show("确定要删除吗","删除确认",MessageBoxButtons.OKCancel,MessageBoxIcon.Question) == DialogResult.OK)
19 {
20 for (int s =0; s count; s++)
21 {
22 string sql ="Delete from Attributes where Att_Id=@att_id";
23 SqlParameter[] p =new SqlParameter[]{
24 new SqlParameter("@att_id",SqlDbType.Int)};
25 p[0].Value = id[s];
26 int val = (int)sqlhelper.delete(sql, p);
27 if (val >0)
28 {
29 yesno =true;
30 }
31 else
32 {
33 yesno =false;
34 break;
35 }
36
37 }
38 if (yesno ==true)
39 {
40 MessageBox.Show("删除成功!");
41 }
42 databind();
43 }
44 else
45 {
46
47 }
48 }

上面仅仅是删除这一项功能。所以非常麻烦!!

    于是,想到了另一种比较简单而且很直观的方法,利用SqlDataAdapter的update方法,直接在DataGridView中进行编辑(添加新数据、更改数据),只需给删除功能另加个按钮或者弹出菜单,datagridview1.Rows.RemoveAt(dataGridView1.CurrentRow.Index)删除选中行,有一点每种不足就是没删除一条就要点击一下按钮,而第一种方法可以一次性删除多条数据。

关于DataGridView控件通过dataset直接更新数据库关于DataGridView控件通过dataset直接更新数据库View Code

1 privatevoid leixing_Load(object sender, EventArgs e)
2 {
3
4 sqlhelper.conn.Open();
5
6 da =new SqlDataAdapter("Select Class_Id as '编号',Class_Type as '商品类型' from Class", sqlhelper.conn);
7 dt =new DataSet();
8 da.Fill(dt, "info");
9 dataGridView1.DataSource = dt.Tables[0];
10 //dataGridView1.DataMember = "info";
11 dataGridView1.Columns[0].Width =130;
12
13
14 sqlhelper.conn.Close();
15
16 }

再添加一个按钮叫做“保存更新” 代码:

这样就实现了全部功能。比较简单。

关于DataGridView控件通过dataset直接更新数据库关于DataGridView控件通过dataset直接更新数据库View Code

1 privatevoid baocun_Click(object sender, EventArgs e)
2 {
3
4
5 if (dt.HasChanges())
6 {
7 SqlCommandBuilder scmb =new SqlCommandBuilder(da);
8 da.Update(dt.Tables[0]);
9 dt.AcceptChanges();
10 }
11
12
13
14 }

这样做的前提是,数据表必须设定主键。

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
Go语言Web开发框架中常见的富文本编辑器控件Go语言Web开发框架中常见的富文本编辑器控件Jun 04, 2023 am 09:10 AM

随着Web应用程序的普及,富文本编辑器成为Web开发中必不可少的一个工具。而在使用Go语言进行Web开发时,我们也需要选择一个适合的富文本编辑器控件来丰富我们的网站和应用程序。在本文中,我们将会探讨Go语言Web开发常见的富文本编辑器控件。FroalaEditorFroalaEditor是一款流行的富文本编辑器控件,被广泛应用于Web开发中。它具有现代化

excel控件怎么制作excel控件怎么制作Mar 20, 2024 am 09:40 AM

我们在使用excel办公软件的时候,如果能够巧妙地使用一些控件,可以帮助我们在excel表格中做出比较专业的效果,比如添加选择控件,可以使填表人员轻松的完成表格的填写。下边,我们就演示excel选择控件的制作方法,希望对你有帮助!1、首先,我们新建并打开一个空白的excel表格。2、添加“开发工具”选项卡,点击左上侧文件按钮,找到“Excel选项”,之后,我们在自定义功能区的选项内找到开发工具,勾选,使其前边出现对号就可以。3、回到excel工作界面,就可以看到“开发工具”选项卡了,一般情况,不

panel控件怎么用panel控件怎么用Oct 10, 2023 am 09:36 AM

panel控件的使用步骤是首先创建了一个Panel控件,并设置了其宽度、高度、背景颜色、边框颜色、边框宽度和内边距,创建了两个按钮,并将它们添加到Panel控件中,最后将Panel控件添加到窗体中。

常见的Ajax控件有哪些?深入了解其特点和功能常见的Ajax控件有哪些?深入了解其特点和功能Jan 17, 2024 am 11:11 AM

深入了解Ajax控件:常见的有哪些?介绍:在现代Web开发中,Ajax(AsynchronousJavaScriptandXML)成为了一种流行的技术,它可以实现网页局部刷新,提升用户体验。而在开发中,我们通常使用Ajax控件来简化和加速我们的开发流程。本文将深入了解Ajax控件,介绍一些常见的控件及其功能。一、jQueryAjax:jQueryA

ColorOS15 界面曝光 关于本机这里大变ColorOS15 界面曝光 关于本机这里大变Aug 28, 2024 pm 03:31 PM

近日ColorOS15率先开启Beta内测,有网友曝光了相关界面,来看看如何~如上图所见,有网友晒出了OPPOFindX7升级ColorOS15Beta后的「关于本机」界面,除了顶部图案有大变外,下半部分的配置信息也从之前的两列变成了全单列纵向分布。附上华为、荣耀、小米、OPPO、vivo、魅族6家品牌手机现在最新版本下的「关于本机/手机」界面,大家可以来说说更喜欢哪家的布局~具体关于ColorOS15,此前消息称其除了大范围支持LivePhoto实况照片外,还将"支持AirDrop&

揭秘必备的Web标准控件:深入解析界面元素揭秘必备的Web标准控件:深入解析界面元素Jan 13, 2024 pm 12:19 PM

Web标准控件大揭秘:必备的界面元素解析导语:Web标准控件是网页设计中不可或缺的一部分,它们为用户提供了丰富的交互体验和友好的界面,具有重要的作用。本文将揭秘几种必备的Web标准控件,为读者解析它们的功能和使用方法。一、按钮控件按钮控件是Web界面设计中最常见、最基础的元素之一,用于触发某种操作。它通常具有以下几个属性:文本内容:按钮上显示的文本信息。样式

控件是什么控件是什么Oct 28, 2022 pm 03:51 PM

控件是指对数据和方法的封装;控件可以有自己的属性和方法,其中属性是控件数据的简单访问者,方法则是控件的一些简单而可见的功能、控件创建过程包括设计、开发、调试;创建控件的最大意义在于封装重复的工作,其次是可以扩充现有控件的功能。

解决系统重装时的环境检测问题解决系统重装时的环境检测问题Jan 08, 2024 pm 03:33 PM

重装系统时环境检测未通过如何解决需要进行改写的原因是:手机中毒了,可以安装手机管家等杀毒软件进行杀毒2、手机内部存储了许多垃圾文件,导致手机运行内存被占用。只需清理手机缓存即可解决这个问题3、手机内存被保存的软件和文件占用太多,需要经常删除不需要的文件和软件没问题,只要你的硬件配置符合安装要求,你可以直接使用新的系统盘重新安装系统!你可以使用U盘或者硬盘来进行安装,速度非常快。但是关键是要使用兼容性好的系统盘(支持IDE、ACHI、RAID模式的安装),并且能够自动永久激活,已经经过验证的。这样

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
2 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
2 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

SublimeText3 英文版

SublimeText3 英文版

推荐:为Win版本,支持代码提示!

VSCode Windows 64位 下载

VSCode Windows 64位 下载

微软推出的免费、功能强大的一款IDE编辑器

螳螂BT

螳螂BT

Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

WebStorm Mac版

WebStorm Mac版

好用的JavaScript开发工具

EditPlus 中文破解版

EditPlus 中文破解版

体积小,语法高亮,不支持代码提示功能