基于DataSet数据访问技术的新应用
2017-11-15陈惠娥
陈惠娥
(广东技术师范学院 天河学院,广东 广州 510540)
基于DataSet数据访问技术的新应用
陈惠娥
(广东技术师范学院 天河学院,广东 广州 510540)
较之于传统数据访问技术ADO的RecordSet类型,ADO.NET增加了许多在传统ADO中找不到的新类型(如数据适配器DataAdapter).鉴于此,文章通过学生选课系统阐述DataSet新技术的应用,其开发主要包括后台管理系统的建立和维护以及前端界面的开发两个方面,提高了程序开发和系统使用管理的效率.
DataSet;数据访问技术;程序开发
1 DataSet对象及其作用
DataSet是ADO.NET离线数据访问模型中的核心对象,能够在断开数据库连接的基础上访问数据源并调用程序集处理,然后使用关联的数据适配器(TableAdapt)将修改后的数据回传数据库[1-2].这使得ADO.NET在数据库处理上超越应用于客户端/服务器系统的ADO技术.
本系统实现了以下功能模块:管理员模块,学生管理模块、选课查询模块、成绩查询模块.系统功能包含学生信息的添加、修改、删除、查询和打印.其主要内容包括如下:界面的设计,数据库的设计以及各个界面后台代码的设计.
DataSet数据集作为Microsoft NET Framework的一个创新技术,不依赖于数据库的独立数据集合,也并没有与数据库建立即时的连线[3].在ADO.NET中,DataSet是专门用来处理从数据保存体(Data Store)中读出的数据.不管底层的数据库是SQL Server还是ADO,DataSet,都可以操作从不同数据源取得数据.
在DataSet中可以包含任意数量的DataTable(数据表),且每个DataTable对应一个数据库的数据表(Table)或视图(View)[4].一般来说,一个对应DataTable对象的数据表就是一堆数据行(DataRow)与列(DataColumn)的集合.DataTable会负责维护每一笔数据行保留它的初始状态(Original State)和当前的状态(Current State),以解决多人同时修改数据时引发的冲突问题.
2 主要功能模块设计
2.1 设计父窗体功能模块
目的与要求:掌握父窗体的创建以及菜单栏、工具栏和状态栏的综合应用.
主要功能:通过菜单和工具按钮导航,可以进入相应的管理窗体,本项目以Form1窗体作为系统的父窗体,从工具箱中添加MenuStrip,ToolStrip,StatusStrip,Timer,PictureBox等控件到Form1窗体中.父窗体设计如图1所示.
图1 父窗体设计
2.2 设计学生信息管理模块
目的与要求:掌握数据库应用程序中数据集相关知识以及数据表控件的应用.
主要功能:通过菜单和工具按钮导航,进入管理窗体,实现添加、删除、更新及查询等操作.
子窗体创建:(1)创建Form2窗体,从工具箱中添加GroupBox,Button,TextBox,RadioButton,DateTimePicker,ComboBox,Label,DataGridView等控件到窗口中.(2)Form2窗体的FormBorderStyle属性设置为FixedDialog,MaximizeBox设置为False.
2.3 设计选课查询模块
目的与要求:掌握多表查询及条件查询的综合应用.
主要功能:通过菜单和工具按钮导航,进入选课查询子窗体,根据课程编号实现多表查询操作.
2.4 设计成绩查询模块
目的与要求:掌握多表查询及条件查询的综合应用.主要功能:通过菜单和工具按钮导航,进入成绩查询子窗体,根据学号实现多表查询操作.
3 DataAdapter数据访问功能实现
ADO.NET提供连接方式主要有两种:(1)基于连接的commander方式,只要SQL语句以及一个用commander对象初始化的sqlcommandreader对象即可实现增删改查.(2)基于非连接的由dataset对象初始化的tableAdapter对象,它能方便地对表格数据进行更新,也能随机读取表格的数据或者绑定数据.对应上述学生信息管理模块,阐述其数据绑定实现流程[5].
(1)为DataGridView1添加数据源.(2)双击打开studentDataSet1数据集,为studentTableAdapter适配表添加方法,分别为:增加新记录方法Insert1、删除方法Delete1、查询方法GetDataBy2、更新方法Update1.右击student表,从快捷菜单中选择"添加",然后选择"查询".
增加新记录方法Insert1:在查询配置向导对话框中,选择INSERT项.增加数据记录与修改数据在实现方法上有很多相同之处,以下使用的是数据控件增加数据记录的方法.然后为"增加"按钮添加单击事件代码,调用Insert1方法,代码如下:
4 结语
本系统使用DataSet数据访问技术,并实现了数据访问技术的添加、修改、删除、查询和打印的新应用,提高了程序开发的效率.
在实际开发中,使用ADO.NET数据控件如DataSet,BindingDataSource,BindingNavigtor,DataGridView等访问数据库的方法较为简便易用,减少代码的冗余性以及复杂性.DataSet是XML与ADO结合的产物,与数据库或SQL无关.它只是简单地对数据表进行操作,交换数据或是将数据绑定到用户界面上.
[1]刘天惠.VB.NET程序设计实训教程[M].北京:清华大学出版社,2016.
[2]童爱红.VB.NET应用教程[M].2版.北京:清华大学出版社,2014.
[3]陈惠娥.Visual Basic2015 实践教程[M].北京:电子工业出版社,2017 .
[4]沈大林.Visual Basic.Net实例教程[M].北京:电子工业出版社,2010.
[5]吴昊,杜玲玲.Visual Basic程序设计实验教程[M].北京:人民邮电出版社,2011.
New application of data access technology based on DataSet
Chen Hui'e
(Tianhe College of Guangdong Polytechnic Normal University, Guangzhou 510540, China)
Compared with the traditional data access technology of ADO RecordSet type, ADO.NET adds many new types that are not found in traditional ADO, such as the DataAdapter data adapter. In view of this, the paper expounds the application of the new technology of DataSet through the student elective system, its development mainly includes two aspects: the establishment and maintenance of backstage management system and front-end interface development, which improves the efficiency of program development and system use management .
DataSet; data access technology; program development
陈惠娥(1984- ),女,广东茂名人,讲师,硕士;研究方向:软件工程,大数据,云计算等.