数据库的基本应用_第1页
数据库的基本应用_第2页
数据库的基本应用_第3页
数据库的基本应用_第4页
数据库的基本应用_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据库的基本应用第1页,课件共47页,创作于2023年2月VisualBasic程序设计教程2第12章我们介绍了文件的基本操作,实际上使用数据库来存储和管理数据将比文件操作有更高的效率。VB具有了强大的数据库操作功能,使程序开发人员可以轻松地开发出各种数据库应用程序。第2页,课件共47页,创作于2023年2月VisualBasic程序设计教程3本章介绍:数据库的基本概念VB可视化数据库管理器的用法VB操作数据库的两种工具DATA数据控件ADO数据对象显示数据的基本方法。第3页,课件共47页,创作于2023年2月VisualBasic程序设计教程413.1.1关系数据库1.数据库和数据表

数据库(DateBse)是许多相关数据根据一定的原则构成的数据集合。一个数据库由一个或多个数据表(Table)组成。

数据表中的一列称为一个字段或域(Field),表中的一行数据称为一条记录(Record)。同一个表中字段名不允许重名表中同一字段的数据类型相同所有记录具有同样的字段13.1概述第4页,课件共47页,创作于2023年2月VisualBasic程序设计教程5学生基本情况表

第5页,课件共47页,创作于2023年2月VisualBasic程序设计教程613.1.2可视化数据管理器2.VB可访问的数据库

VB默认的数据库格式与Access格式相同,其默认的数据库文件(.mdb)称为内部数据库。除此之外,在VB中还可以访问:外部数据库,如dBASE、FoxPro、Paradox等ISAM(索引顺序访问方法)数据库,以及Lotus123和Excel等电子表格数据列表ODBC(开放式数据互接)数据库,如SQLServer等第6页,课件共47页,创作于2023年2月VisualBasic程序设计教程7可视化数据管理器是VB提供的一个数据库操作的实用工具,使用它可以方便地建立数据库,并对数据表的记录进行增加、删除、修改及查询。VB默认的数据库是Access,扩展名是.mdb。第7页,课件共47页,创作于2023年2月VisualBasic程序设计教程81.启动可视化数据管理器图在VBIDE中,打开“外接程序”菜单的“可视化数据管理器”命令,即打开可视化数据管理器的“VisData”窗口,如图所示。第8页,课件共47页,创作于2023年2月VisualBasic程序设计教程92.建立数据库的表结构建立数据库→新建数据表→确定数据表的字段以及字段名、类型和长度等信息【例】建立一个学生.mdb数据库,在该库中新建一个名为学生基本情况表的数据表。字段名学号姓名性别出生日期籍贯专业类型TextTextTextData/TimeTextText长度78281020操作步骤:建立数据库→新建数据表→建立表索引(可选)→生成表

第9页,课件共47页,创作于2023年2月VisualBasic程序设计教程103.修改表结构

“数据库窗口”快捷菜单中“设计”命令

4.输入、编辑、删除记录在“数据库窗口”中双击数据表第10页,课件共47页,创作于2023年2月VisualBasic程序设计教程1113.1.3使用SQL语句结构化查询语言(SQL)是一种操作关系数据库的工业标准语言。SQL由一系列SQL语句组成。用户可以在“SQL语句”窗口中输入SQL语句,也可以在程序中使用SQL语句中来实现各种功能。下面介绍SQL的基本语句。第11页,课件共47页,创作于2023年2月VisualBasic程序设计教程121.SELECT语句。SELECT语句可以从一个或多个表中选取特定的行和列。该语句基本格式如下:SELECT字段名列表From表名[Where查询条件][OrderBy排序字段[ASC|DESC],…]【例】:ELECT学号,姓名,性别From学生基本情况表Where专业="计算机应用"SELECT*From学生基本情况表Where性别="女"OrderBy专业第12页,课件共47页,创作于2023年2月VisualBasic程序设计教程132.Insert语句。Insert语句用于向数据表中追加一条记录。语句格式如下:InsertInto表名(字段列表)Values(字段值表)例如InsertInto学生成绩表(学号,英语,程序设计)Values("2001006",85,88)第13页,课件共47页,创作于2023年2月VisualBasic程序设计教程143.Delete语句。Delete语句用于删除指定条件的记录。语句格式如下:DeleteFrom表名Where条件说明:默认Where子句,将删除指定表中的所有记录。例如DeleteFrom学生成绩表Where学号="2001006"第14页,课件共47页,创作于2023年2月VisualBasic程序设计教程154.Update语句。Update语句用于修改指定条件的记录。语句格式如下:Update表名Set字段=表达式[,字段=表达式,……]Where条件例如,修改学生基本情况表中学号为“2001005”的专业,可使用的Update语句如下:

Update学生基本情况表Set专业="计算机应用"Where学="2001005"第15页,课件共47页,创作于2023年2月VisualBasic程序设计教程16【例13-1】修改例11-1程序,用数据库方法进行用户名和密码验证。界面如图所示,frmlogin窗体中添加了一个Data控件。13.2使用数据库方式验证用户名和密码登录程序第16页,课件共47页,创作于2023年2月VisualBasic程序设计教程17建立管理员表,在管理员表中添加记录。Data控件属性设置属性属性值说明名称Data1ConnectAccess连接数据库类型DatabaseName学生.mdb数据库名称VisibleFalse不可见第17页,课件共47页,创作于2023年2月VisualBasic程序设计教程18

PrivateSubcmdOK_Click()DimSqlAsstringSql="select*from管理员表where用户名='"+UserName.Text+"'"Sql=Sql+"and密码='"+Password.Text+"'"Data1.RecordSource=Sql'用Sql语句返回记录集Data1.Refresh'刷新数据库IfNotData1.Recordset.EOFAndnPass<3Then'在数据库中找到了对应的用户名和密码frmLogin.Hidefrmmain.ShowElseEndIfEndSub第18页,课件共47页,创作于2023年2月VisualBasic程序设计教程191.窗体上添加Data控件

2.三个重要属性Connect:指定所连接的数据库类型,默认为AccessDatabaseName:选择要访问的数据库文件

RecordSource:确定要访问的数据来源(数据表或SQL查询语句)3.其它常用属性RecordSetType:设置记录集的类型ReadOnly:设置是否以只读方式打开数据库

13.3使用Data控件访问数据库第19页,课件共47页,创作于2023年2月VisualBasic程序设计教程2013.3.1Data控件的常用属性程序运行时,根据Data控件设置的属性打开数据库,返回一个记录集对象(RecordSet),RecordSet对象提供和物理数据库相应的一组逻辑记录。Data控件对数据的操作主要是对RecordSet对象进行的,RecordSet对象也有自己的属性和方法。第20页,课件共47页,创作于2023年2月VisualBasic程序设计教程21属性说明BOF记录指针是否指向RecordSet对象第一条记录之前EOF记录指针是否指向RecordSet对象最后一条记录之后RecordCount返回RecordSet对象的记录的个数AbsolutePosition返回当前记录的记录号。取值范围从0开始,到RecordCount-1。NoMatch用Find查询方法在表中查询满足某一条件的记录,如果未找到符合条件的记录,则该属性值为True,否则值为False。Fields记录集中的字段,Fields(i)表示当前记录的第i个字段,i从0开始;Fields("字段名")表示当前记录的指定字段第21页,课件共47页,创作于2023年2月VisualBasic程序设计教程2213.3.2Data控件和RecordSet对象的常用方法1.Data控件的常用方法(1)Refresh方法格式:Data控件名.Refresh在程序运行中,如改变了Data控件的Connect、DatabaseName、RecordSource或ReadOnly等属性的值,则必须调用Refresh方法,使所作的更改生效。第22页,课件共47页,创作于2023年2月VisualBasic程序设计教程23(2)UpdateRecord方法格式:Data控件名.UpdateRecord当用户对数据库作了修改后,调用此方法使所作的修改生效。UpdateRecord方法只保存那些来自被绑定的控件。第23页,课件共47页,创作于2023年2月VisualBasic程序设计教程242.RecordSet对象的常用方法(1)记录的定位方法格式:Data控件名.RecordSet.方法名功能:在记录集上前后移动以改变当前记录。其中方法有:MoveFirst:将记录指针定位到第一条记录。MoveLast:将记录指针定位到最后一条记录。

第24页,课件共47页,创作于2023年2月VisualBasic程序设计教程25MoveNext:将记录指针定位到下一条记录。MovePrevious:将记录指针定位到上一条记录。(2)Update方法格式:Data控件名.RecordSet.Update功能:更新记录内容。通常在调用了Addnew方法后,调用该方法。第25页,课件共47页,创作于2023年2月VisualBasic程序设计教程26(3)AddNew方法格式:Data控件名.RecordSet.AddNew功能:添加一条新的空白记录。用户可以给当前记录的各字段赋值,然后调用Update方法对数据表更新,否则用AddNew方法添加的记录无效。例如:Data1.RecordSet.AddNewData1.RecordSet.Fields(0)="王刚"……Data1.RecordSet.Update第26页,课件共47页,创作于2023年2月VisualBasic程序设计教程27(4)Delete方法格式:Data控件名.RecordSet.Delete功能:删除当前记录。使用该方法删除一条记录后,需用MoveNext方法将记录指针移到下一条记录。第27页,课件共47页,创作于2023年2月VisualBasic程序设计教程28(5)Edit方法格式:Data控件名.RecordSet.Edit功能:将当前记录的内容进行修改之前,使用Edit方法使记录处于编辑状态。与Addnew方法类似,必须再调用Update或UpdateRecord方法来更新,才使用所作的修改生效。第28页,课件共47页,创作于2023年2月VisualBasic程序设计教程29(6)记录的查询方法格式:Data控件名.RecordSet.方法名功能:在记录集中查询满足条件的记录。如果找到满足条件的记录,则记录指针将定位在找到的记录上。如果找不到满足条件的记录,则记录指针将定位记录集的末尾。其中方法有:FindFirst:查询满足条件的第一条记录。FindLast:查询满足条件的最后一条记录。FindNext:从当前记录开始往后查找满足条件的第一条记录。FindPrevious:从当前记录开始往前查找满足条件的第一条记录。第29页,课件共47页,创作于2023年2月VisualBasic程序设计教程30通常可以使用Find方法查找某字段的值与一表达式的值相匹配的记录,通过NoMatch属性判断是否找到。例如,在“学生基本情况表”中,查找第一条姓名为“王东”的记录,可以用如下的语句:Data1.Recordset.FindFirst"姓名='王东'"IfData1.Recordset.NoMatchThenMsgBox"数据表中没有符合条件的记录!"EndIf第30页,课件共47页,创作于2023年2月VisualBasic程序设计教程3113.3.3Data控件的常用事件1.Validate事件在一条不同的记录成为当前记录之前,Update方法之前,或者Delete、Unload或Close操作之前会引发该事件。即将记录指针从X记录移到Y记录时,引发该事件。引发该事件时,当前记录仍为X记录。Validate事件过程的格式为:PrivateSubData1_Validate(ActionAsInteger,SaveAsInteger)第31页,课件共47页,创作于2023年2月VisualBasic程序设计教程32其中,Action参数用来标识引发该事件的操作。借用该参数可以根据不同的操作作不同的处理。Save参数是一个布尔表达式,用来表示是否保存已修改的数据。如果该事件退出时save为True,则激活Edit和UpdateRecord方法。2.Reposition事件在一条记录成为当前记录之后引发该事件。即将记录指针从X记录移到Y记录时,引发该事件。引发此事件时,当前记录是Y记录。第32页,课件共47页,创作于2023年2月VisualBasic程序设计教程33绑定:通过对普通控件的属性设置,使得这些控件与Data控件记录集中的字段建立链接关系。1.Data的绑定控件具有DataSource和DataField属性的控件可以和Data控件进行绑定,如标签、文本框等。2.绑定控件的属性设置DataSource:选择所绑定的Data控件

DataField:确定需显示或更新的数据表字段,即Data控件连接的数据表字段

13.4数据绑定控件介绍第33页,课件共47页,创作于2023年2月VisualBasic程序设计教程34【例13-2】设计一个程序,管理“学生.mdb”数据库中“学生基本情况表”的记录的内容,此数据表中的记录如表13.1所示。程序运行的界面如图所示。第34页,课件共47页,创作于2023年2月VisualBasic程序设计教程35分析:程序运行时要显示如图的界面,相应文本框需要分别绑定到数据控件,同时由于文本框控件已绑定,文本框中任何数据的修改都会直接改变数据库中的数据,因此需要对已更改的数据作出判断,这一过程可以通过Data控件的Validate事件完成。另外,通过Data控件的Reposition事件设置它的Caption属性。数据控件Data1和文本框的属性设置如表13.9所示。第35页,课件共47页,创作于2023年2月VisualBasic程序设计教程36对象属性属性值Data1ConnectAccessDatabaseName学生数据库所在路径及名称(学生.mdb)RecordSource学生基本情况表Text1~Text6DataSourceData1DataField分别为:学号、专业、姓名、性别和籍贯第36页,课件共47页,创作于2023年2月VisualBasic程序设计教程37ADO:ActiveXDataObjects(ActiveX数据对象)创建ADO控件(1)“工程”→部件”(2)点击工具箱中,在窗体上画出ADO对象13.5使用ADO控件访问数据库第37页,课件共47页,创作于2023年2月VisualBasic程序设计教程3813.5.2ADO控件的属性、方法和事件设置窗体上ADO对象的ConnectionString属性第38页,课件共47页,创作于2023年2月VisualBasic程序设计教程39

第39页,课件共47页,创作于2023年2月VisualBasic程序设计教程40设置窗体上ADO对象的RecordSource属性

选择数据表为记录源由SQL查询来确定记录源第40页,课件共47页,创作于2023年2月VisualBasic程序设计教程41ADO控件的方法和事件ADO控件与Data控件类似,对数据的操作主要通过Recordset对象的方法来实现。ADO控件提供可响应的事件较多,常用的是WillMove事件和MoveComplete事件。当用某种方法改变纪录集的指针使其从一条记录移到另一条记录,产生WillMove事件。当一条记录成为当前记录后,产生MoveComplete事件,它在WillMove事件之后发生。第41页,课件共47页,创作于2023年2月VisualBasic程序设计教程42DataGrid控件与ADO控件绑定后,可一次显示多条记录,并允许对显示的记录进行编辑修改,并可将修改的结果自动更新到数据库中。使用DataGrid控件:(1)“工程”→部件”(2)点击工具箱中(3)在窗体上画出DataGrid对象13.6使用DataGrid浏览数据库第42页,课件共47页,创作于20

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论