使用DataGridView进行增删改查,并同步到数据库
DataGridView控件具有极高的可配置性和可扩展性。它提供有大量的属性、方法和事件,能够用来对该控件的外观和行为进行自己定义。以下通过一个小样例来展示DataGridView进行增删改查,并同步到数据库的功能。
窗口展示:
用户需求:
1.当窗口显示时,将数据库中用户表中的数据显示出来。
2.选中一行,运行删除操作,同一时候在数据库中对应数据被删除。
3.双击某个数据,进行编辑,或者在空白行加入新的数据,然后点击更新,数据库随之更新。
代码展示:
Public Class Form1'代码较简单,没有使用三层架构。
Public DT As DataTable
Public SDA As SqlDataAdapter
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load Dim conn = New SqlConnection("Server=***;DataBase=userinfo;User ID=***;Password=***")
SDA = New SqlDataAdapter("select * from Users", conn)
DT = New DataTable SDA.Fill(DT) '将查到的数据传到DataTable中
DataGridView1.DataSource = DT '将DataTable中的数据传给DataGridView1显示 End Sub
'更新操作
Private Sub btnUpdate_Click(sender As Object, e As EventArgs) Handles btnUpdate.Click Dim SCB = New SqlCommandBuilder(SDA)
SDA.Update(DT)
MsgBox("更新成功") End Sub
'删除操作
Private Sub btnDel_Click(sender As Object, e As EventArgs) Handles btnDel.Click
'删除选中行
DataGridView1.Rows.RemoveAt(DataGridView1.CurrentCell.RowIndex)
'数据库中进行删除
Dim SCB = New SqlCommandBuilder(SDA)
SDA.Update(DT)
MsgBox("删除成功") End Sub
End Class
注意:
1.数据库中对应的表中一定要有主键。
2.DataGridView启用编辑和删除功能。
代码解析:
1.DataSet与DataTable:
DataSet:数据集,简单理解为一个暂时数据库,将数据源的数据保存在内存中,独立于不论什么数据库。一般包括多个DataTable,以及DataTable之间的约束关系。通过 dataset["表名"]得到DataTable 。
2.SqlDataAdapter:SqlDataAdapter对象名
= new
SqlDataAdapter(查询用sql语句,数据库连接);
Fill方法向数据表中填充数据。Update方法将数据表中的数据提交到数据库。
SqlCommandBuilder builder =new SqlCommandBuilder(已创建的DataAdapter对象);
利用SqlCommandBuilder对象可以自己主动生成:INSERT命令、UPDATE命令、DELETE命令。
以上展示的仅仅是冰山一角,DataGridView的功能特别强悍。学无止境!
使用DataGridView进行增删改查,并同步到数据库的更多相关文章
- 浅谈dataGridView使用,以及画面布局使用属性,对datagridview进行增删改查操作,以及委托使用技巧
通过几天的努力后,对datagridview使用作一些简要的介绍,该实例主要运用与通过对datagridview操作.对数据进行增删改查操作时,进行逻辑判断执行相关操作.简单的使用委托功能,实 ...
- 用户增删改查 django生命周期 数据库操作
一 django生命周期 1 浏览器输入一个请求(get/post)2 响应到django程序中3 执行到url,url通过请求的地址匹配到不同的视图函数4 执行对应的视图函数,此过程可以查询数据库, ...
- jdbc 增删改查以及遇见的 数据库报错Can't get hostname for your address如何解决
最近开始复习以前学过的JDBC今天肝了一晚上 来睡睡回笼觉,长话短说 我们现在开始. 我们先写一个获取数据库连接的jdbc封装类 以后可以用 如果不是maven环境的话在src文件下新建一个db.pr ...
- Java学生信息增删改查(并没用数据库)
一个泛型的应用,Java版本增删改查,写的简陋,望批评指正 2016-07-02 很久前写的一个程序了.拿出来存一下,不是为了展示啥,自己用的时候还可以看看.写的很粗糙. import java.io ...
- java图书管理的一个小模块(增删改查,不使用数据库)
图书管理模块:某图书管需要对图书进行信息化管理,要求管理员能够进行新增图书,能按照书名进行模糊查看图书能进行价格统计 系统实现如下:1.新增2.查询3.统计价格 1请输入新书:图书号,书名,作者,价格 ...
- WPF DataGrid 数据绑定、样式、分页、增删改查,连接Access数据库
先上效果图: XAML: <UserControl xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation&q ...
- 在Eclipse中对包进行增删改查
package com.hanqi.test; import java.sql.Connection; import java.sql.DriverManager; import java.sql.R ...
- mysql 增删改查最基本用法小结
目录: 1.新建数据库 2.新建数据表 3.查看表结构 4.增删改查 建立一个数据库students 建立一块数据表class1 内容包括: id 主键 自动编号 无符号位 SMALLINT类型 na ...
- java连接mysql以及增删改查操作
java连接数据库的代码基本是固定的,步骤过程觉得繁琐些,代码记起来对我来说是闹挺.直接上代码: (温馨提醒:你的项目提前导入连接数据库的jar包才有的以下操作 ) class DBConnectio ...
随机推荐
- vue 递归组件
如果你的项目里面的数据结构是一个树状的数据结构 然后递归组件是一个很好的一个解决你这个数据结构的一个方式 就是组件内部调用自身 tree.vue里面直接tree-node <tree-node& ...
- 1、树莓派3B开箱+安装系统
说白了,树莓派就是英国人为学生开发的一款微型电脑.电脑能干什么,那就多了.英国小学生有用树莓派做气象站的,有检测家长开门回家的(可以安心玩游戏了),总之脑洞有多大就可以玩多大. 了解到了之后就一直心水 ...
- Hadoop案例(十一)MapReduce的API使用
一学生成绩---增强版 数据信息 computer,huangxiaoming,,,,,,, computer,xuzheng,,,,, computer,huangbo,,,, english,zh ...
- Kylin使用笔记-0: kylin介绍
APACHE KYLIN™ 概览 Apache Kylin™是一个开源的分布式分析引擎,提供Hadoop之上的SQL查询接口及多维分析(OLAP)能力以支持超大规模数据,最初由eBay Inc. 开发 ...
- tocmat远程调试
有时候使用tomcat进行远程调试,下面贴出远程调试用的startup.bat脚本 rem Licensed to the Apache Software Foundation (ASF) under ...
- MySQL性能优化(七·下)-- 锁机制 之 行锁
一.行锁概念及特点 1.概念:给单独的一行记录加锁,主要应用于innodb表存储引擎 2.特点:在innodb存储引擎中应用比较多,支持事务.开销大.加锁慢:会出现死锁:锁的粒度小,并发情况下,产生锁 ...
- NetworkX 使用(三)
官方教程 博客:NetworkX NetworkX 使用(二) Introduction to Graph Analysis with NetworkX %pylab inline import ne ...
- jdk1.8安装后查看Java -version出错
最近在电脑行安装了多个jdk的版本 分别是jdk1.6,jdk1.7,jdk1.8三个版本,在配置环境变量的时候,选择的是jdk1.7; 但是奇怪的是,当我在cmd中输入java -version后, ...
- 顺序线性表之大整数求和C++实现
顺序线性表之大整数求和 大整数求和伪代码 1.初始化进位标志 flag=0: 2.求大整数 A 和 B 的长度: int aLength = a.GetLength(); int bLength = ...
- 某gov的逻辑漏洞
首先找一个号 在企业信息里面查看到大量的企业名称和组织机构代码 随后去找回密码那 可以看到是直接显示了用户名和密码 随后去登录 可以看到大量的工程信息个企业注册信息