基于.NET WinForms 数据CURD功能的实现

使用开发工具 VS 2022 C#,数据库MS SQL SERVER 2019 ,基于NET WinForms,实现数据记录的创建(Create)、更新(Update)、读取(Read)和删除(Delete)等功能。主要控件包括:DataGridView,SqlDataApater , DataTable , bingingSource和DataSet。

1.WinForms界面

2.使用SqlDataApater + DataSet + DataGridView 读取数据

private void ReadData()
{//数据库连接串string strConn = "Data Source=127.0.0.1;Initial Catalog=TEST;Persist Security Info=True;User ID=sa;Password=*********;Encrypt=False";SqlConnection conn = null;try{conn = new SqlConnection(strConn);conn.Open();//打开数据库string sql = "select * from TestTask order by 1";SqlDataAdapter sda = new SqlDataAdapter(sql, conn); //创建SqlDataAdapter类的对象System.Data.DataSet ds = new System.Data.DataSet();//创建DataSet类的对象sda.Fill(ds);//使用SqlDataAdapter对象sda将查新结果填充到DataSet对象ds中dataGridView1.DataSource = ds.Tables[0];//设置表格控件的DataSource属性//设置数据表格上显示的列标题//dataGridView1.Columns[0].HeaderText = "编号";//设置数据表格为只读dataGridView1.ReadOnly = true;//不允许添加行dataGridView1.AllowUserToAddRows = false;//背景为白色dataGridView1.BackgroundColor = Color.White;//只允许选中单行dataGridView1.MultiSelect = false;//整行选中dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect;}catch (Exception ex){MessageBox.Show("加载数据错误!" + ex.Message);}finally{if (conn != null){conn.Close();//关闭数据库连接}}
}

3.根据查询条件查询数据

if (textBox1.Text != "")//textBox1.Text为查询条件
{string strConn = "Data Source=127.0.0.1;Initial Catalog=TEST;Persist Security Info=True;User ID=sa;Password=********;Encrypt=False";//创建SqlConnection的实例SqlConnection conn = null;try{conn = new SqlConnection(strConn);conn.Open();        //打开数据库string sql = "select * from TestTask where 检测编号 like '%{0}%'";sql = string.Format(sql, textBox1.Text);/填充占位符SqlDataAdapter sda = new SqlDataAdapter(sql, conn);//创建SqlDataAdapter类的对象DataSet ds = new DataSet();//创建DataSet类的对象sda.Fill(ds);//使用SqlDataAdapter对象sda将查新结果填充到DataSet对象ds中dataGridView1.DataSource = ds.Tables[0];//设置表格控件的DataSource属性}catch (Exception ex){MessageBox.Show("查询数据出错!" + ex.Message);}finally{if (conn != null){//关闭数据库连接conn.Close();}}
}

4.使用SqlDataApater + DataTable + bingingSource + DataGridView 读取数据

string strConn = "Data Source=127.0.0.1;Initial Catalog=TEST;Persist Security Info=True;User ID=sa;Password=********;Encrypt=False";
SqlConnection con = null;
con = new SqlConnection(strConn);
con.Open();
string strSql = "select * from testtask";
SqlDataAdapter ada = new SqlDataAdapter(strSql, con);
DataTable myTable = new DataTable();
ada.Fill(myTable);bindingSource1.DataSource = myTable;this.dataGridView1.DataSource = bindingSource1;


5TableAdapter、Dataset与BindingSource的关系

TableAdapter:沟通物理数据库(database)和内存数据库(dataset),提供select,update,insert,delete四大操作。

BingdingSource:将内存数据表(datatable)绑定到控件(control),并为内存数据表(datatable)提供过滤条件(Filter)和排序(Sort)两功能。注意两点:

1、可以用一个BindingSource绑定多个控件,实现不同控件数据的联动。例如,有一DataTable(学号、姓名、成绩、备注),通过一个BindingSource,将学号、姓名、成绩绑定到一个Datagridview,将备注绑定到一个Lable,在datagridview里选中不同的学生,Lable将会出现相应学生的备注信息。(如果datagridview和Lable用两个不同的BindingSource,则不能连动)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/685722.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从面试官视角出发,聊聊产品经理的面试攻略

一、请进行自我介绍 这题基本是面试的开胃菜了,估计面试多的,自己答案都能倒背如流啦。 其实自我介绍还是蛮重要的,对我来说主要有 3 个作用:面试准备、能力预估、思维评估。 面试准备:面试官每天都要面 3 ~6 人&am…

三、配置带HybridCLR的ARCore开发环境

预告 本专栏将介绍如何使用这个支持热更的AR开发插件,快速地开发AR应用。 专栏: Unity开发AR系列 插件简介 通过热更技术实现动态地加载AR场景,简化了AR开发流程,让用户可更多地关注Unity场景内容的制作。 “EnvInstaller…”支…

2023年国赛高教杯数学建模C题蔬菜类商品的自动定价与补货决策解题全过程文档及程序

2023年国赛高教杯数学建模 C题 蔬菜类商品的自动定价与补货决策 原题再现 在生鲜商超中,一般蔬菜类商品的保鲜期都比较短,且品相随销售时间的增加而变差,大部分品种如当日未售出,隔日就无法再售。因此,商超通常会根据…

AI编码工具-通义灵码功能实测(二)

AI编码工具-通义灵码功能实测(二) 通义灵码智能问答 在上一篇文章中:https://blog.csdn.net/csdn565973850/article/details/138563670?spm1001.2014.3001.5501 讲述了通义灵码的7大应用场景,这里在使用过程中遇到了一些问题&…

【ArcGIS Pro微课1000例】0058:玩转NetCDF多维数据集

一、NetCDF介绍 NetCDF(network Common Data Form)网络通用数据格式是由美国大学大气研究协会(University Corporation for Atmospheric Research,UCAR)的Unidata项目科学家针对科学数据的特点开发的,是一种面向数组型并适于网络共享的数据的描述和编码标准。NetCDF广泛应…

5.2 Java全栈开发前端+后端(全栈工程师进阶之路)-服务端框架-Spring框架-相信我看这一篇足够

1.Spring框架 1.1.Spring框架简介 Spring是一个基于java的轻量级的、一站式框架。 虽然Spring是一个轻量级框架,但并不表示它的功能少。实际上,spring是一个庞然大物,包罗万象。 时至今日,Spring已经成为java世界中事实上的标准…

教你解决PUBG绝地求生游戏中闪退掉线无法重连回去的问题

《绝地求生》(PUBG),作为一款在全球范围内掀起热潮的战术竞技游戏,以其栩栩如生的战场环境和令人心跳加速的生存冒险博得了广大玩家的青睐。然而,一些玩家在经历了一场惊心动魄的对局后,却面临了一个不大不…

数据库备份可视化网站,配置定时备份

有兴趣的看官老爷可以留下评论私聊。 使用示例👍 网站展示 MySQL mysqldump -h 127.0.0.1 -uroot -p#{PWD} ht > test#{DATE}.sql 在win运行结果:成功生成备份文件 PostgreSQL PostgreSQL export PGPASSWORD#{PWD} pg_dump -h localhost -U postgr…

树与二叉树之间的转换

树转化成二叉树:兄弟相连留长子 1.加线:在兄弟之间加一条线 2.抹线:对每个结点,除了其左孩子外,去除其与其余孩子之间的关系 3.旋转:以树的根结点为轴心,将整树顺时针转45 二叉树转化成为树…

nginx--防盗链

盗链 通过在自己网站里面引用别人的资源链接,盗用人家的劳动和资源 referer referer是记录打开一个页面之前记录是从哪个页面跳转过来的标记信息 正常的referer信息 none:请求报文首部没有referer首部,比如用户直接在浏览器输入域名访问web网站&…

bean在java中什么意思?这篇文章带你详细了解

bean在java中什么意思?这篇文章带你详细了解 在Java的世界里,你可能会经常听到“Bean”这个词。它听起来像咖啡豆,但实际上与咖啡无关。那么,Java Bean到底是什么呢? 简单来说,Bean是一种特殊的Java类&…

数据分析——业务指标量化

业务指标量化 前言一、统计指标二、统计指标特点完整的统计指标统计指标的理解和使用方法 三、统计指标类型总量指标时期指标时点指标总量指标的作用 相对指标计划完成相对数指标结构相对数指标比例相对数指标比较相对数指标动态相对数指标 平均指标 四、数量指标和质量指标五、…