收藏 分销(赏)

用VB开发数据库连接PPT学习课件.ppt

上传人:人****来 文档编号:7393033 上传时间:2025-01-02 格式:PPT 页数:70 大小:1.68MB
下载 相关 举报
用VB开发数据库连接PPT学习课件.ppt_第1页
第1页 / 共70页
用VB开发数据库连接PPT学习课件.ppt_第2页
第2页 / 共70页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,C/S,VB,数据库应用系统开发,数据库应用系统结构,Visual Basic,快速入门,开放数据库连接(,ODBC,),数据访问接口(,ADO,),VB,数据库编程举例,VB,开发数据库应用系统实例分析,1,开放数据库连接(,ODBC,),ODBC,概念,ODBC,的构成,建立,ODBC,数据源,2,ODBC,概念,ODBC,(开放数据库接连,,Open DataBase Connectivity,)是,Microsoft,公司开发的一套开放的数据库系统应用程序接口标准。,ODBC,使得客户端应用不再紧密地依赖于数据库管理系统,用户有广泛的挑选余地来选择自己喜欢和熟悉的开发工具。,ODBC,使数据库应用程序具有很好的适应性和可移植性,并且具备同时访问多种数据库管理系统的能力。,3,ODBC,的构成,应用程序,驱动程序管理器,驱动程序,数据源,4,VB,应用程序,驱动程序管理器,数据源,1,数据源,2,数据源,3,数据源,4,5,驱动程序管理器的工作,驱动程序管理器,是,Windows,下的应用程序,其主要作用是:,安装指定的驱动程序;,定义数据源,并把数据源映射到具体的,ODBC,驱动程序上;,为每个驱动程序提供,ODBC,函数的入口点;,检查,ODBC,参数的合法性等。,6,ODBC,驱动程序的具体任务,ODBC,应用程序不能直接存取数据库,它将所要执行的操作提交给数据库驱动程序,通过驱动程序实现对数据库的各种操作,数据库操作结果也通过驱动程序返回给应用程序。,ODBC,驱动程序的具体任务有:,建立与数据源的连接;,向数据源提交,SQL,请求;,处理查询结果;,将数据源错误转换为标准错误代码,返回给应用程序;,提交事务的开始请求、完成请求和撤消请求等。,7,什么是数据源,数据源,是,指任何一种可以通过,ODBC,连接的数据库管理系统,包括要访问的数据库和数据库的运行平台(包括数据库管理系统和运行数据库管理系统的服务器)。,它可以是,PC,平台上的,FoxPro,数据库、,Windows,平台上的,SQL Server,数据库或,OS/2,平台的,Oracle,数据库等。,数据源名,掩盖了数据库服务器之间的差别,通过定义多个数据源,让每个数据源名对应一个数据库管理系统中的指定数据库,这样就可以实现在应用程序中通过数据源名而不是具体的数据库名访问指数据库的目的。,8,建立,ODBC,数据源,可以通过,Windows,的控制面板可以建立,ODBC,数据源。,建立步骤为:,9,10,11,12,ODBC,数据源共有三种类型,第一种是用户数据源(用户,DSN,),第二种是系统数据源(系统,DSN,),第三种是文件数据源(文件,DSN,)。,用户,DSN,只能用于当前定义此数据源的机器上,而且只有定义数据源的用户才可以使用;,系统,DSN,可用于当前机器上的所有用户;,文件,DSN,是将用户定义的数据源信息保存到一个文件中,并可被所有安装了相同驱动程序的不同机器上的用户共享。,13,14,15,16,17,18,19,20,新建数据源,21,数据访问接口(,ADO,),访问数据库的几种方式,一致的数据访问策略,ADO,对象模型,ADO,数据控件与数据绑定控件,22,访问数据库的几种方式,使用数据访问接口,(对象模型),ActiveX,数据对象(,ADO,,,ActiveX Data Objects,),远程数据对象(,RDO,,,Remote Data,Objects,),数据访问对象(,DAO,,,Data Access,Objects,),使用控件数据库表记录,此方法局限性强,处理数据量小。,直接调用,ODBC API,(应用程序编程接口),(,Application Programming Interface,)编程复杂。,23,一致的数据访问策略的体系结构,前 端 应 用 程 序,ADO,OLE DB,提供者,提供者,提供者,提供者,VSAM/,ISAM,E-mail,消息,目录,服务,ODBC,提供者,文件,系统,关系数据库,24,ADO,对象模型,ADO,是面向对象的,API,,它只需开发者掌握几个简单对象的方法和属性。,ADO,对象模型中包含了三核心对象:,Connection,、,Command,和,Recordset,。,开发人员可以创建这三个对象并使用这些对象访问数据库。,在,ADO,对象模型中还有几个其他对象:,Field,、,Property,、,Error,和,Parameter,,它们是前面三个对象的子对象。,这些对象的描述如下:,25,Connection,对象,:包含了与数据源连接的信息。,Command,对象,:定义一个,SQL,语句、存储过程等与命令相关的信息。,Recordset,对象,:包含了从数据源得到的记录集。,Field,对象,:包含了记录集中的某个记录的字段信息。字段信息包括字段的数据类型、精度和数据范围等。,Property,对象,:,ADO,对象的属性集。,Parameter,对象,:保存与,Command,对象相关的参数。,Error,对象,:包含了由数据源产生的,Errors,集合中的扩展的错误信息。由于一个单独的语句会产生一个或多个错误,因此,Errors,集合可以同时包括一个和多个,Error,对象。,26,ADO,对象模型,Connection,Error,Command,Parameter,Recordset,Field,Property,Property,Property,Property,27,ADO,数据控件与数据绑定控件,ADO,数据控件是使用,ADO,数据对象来快速建立应用程序和数据源之间的连接,并快速创建数据访问结果记录集的工具。,由于,ADO,数据控件不具有显示数据的功能,因此要将数据操作结果在用户界面上显示出来,就要靠数据绑定控件来实现。,ADO,数据控件,数据绑定控件,28,ADO,数据控件,在,VB,的工具箱中添加,ADO,数据控件,ADODC,对象的主要属性、方法和事件,RecordSet,对象的主要属性和方法,RecordSet,对象的主要属性,Fields,对象属性,RecordSet,对象的主要方法,29,在,VB,的工具箱中添加,ADO,数据控件,30,31,ADO,数据控件(,ADODC,),ADODC,在窗体中的样式,32,ADODC,对象的主要属性、方法和事件,ADODC,对象的主要属性,ADODC,对象的主要方法,ADODC,对象的主要事件,33,ADODC,对象的主要属性,ConnectionString,属性,(用于连接数据源),Command,属性,RecordSource,属性,CommandType,属性,Recordset,属性,34,ConnectionString,属性设置步骤,使用,ODBC,数据资源名称,以建立,ODBC,数据源时使用,使用连接字符串,未建立,ODBC,数据源时使用,35,使用,ODBC,数据资源名称,36,37,使用连接字符串,38,39,40,41,42,RecordSource,属性,此属性用于设置,ADO,结果集的内容,这个内容可以来自于一张表,也可以来自一个查询语句,也可以来自一个存储过程的执行结果。,RecordSource,属性的值与,CommandType,属性的值有关,两者协同使用。,43,CommandType,属性,此属性指明命令的类型,即要访问的数据的来源。一般这个属性和,RecordSource,(记录源)属性配合使用。,CommandType,属性的取值有如下四个:,adCmdUnknown,:默认值。表示,RecordSource,中的命令类型未知。,adCmdTable,:,RecordSource,属性的内容是一个表名,表示其结果集是对此表执行的无条件查询的结果。,adCmdText,:,RecordSource,属性的内容是一个查询语句文本串,表示其结果集是执行此查询语句文本串产生的结果。,adCmdStoredProc,:,RecordSource,属性的内容是一个存储过程名,表示其结果集是执行此存储过程产生的结果。,设置,CommandType,属性的方法参见设置,RecordSource,部分。,44,CommandType,属性设置步骤,45,46,Recordset,属性,Recordset,属性是,ADO,数据控件中实现数据记录操作的最重要的属性,这个属性本身又是一个对象,也有自己的属性和方法,它直接指向,ADO,对象模型中的,Recordset,对象。,稍后介绍该对象,47,ADODC,对象的主要方法,ADODC,控件最常用的是,Refresh,方法。,Refresh,方法用于更新,ADODC,控件属性,使修改后的,ADO,数据控件属性生效。,当修改了,ADODC,控件的,ConnectionString,属性的值时,使用,Refresh,方法会重新连接一次数据库;当修改了,ADODC,控件的,RecordSource,属性的值时,使用,Refresh,方法会重新执行,RecordSource,属性的内容,重新产生结果集。,使用,Refresh,方法的格式为:,ADODC,控件名,.Refresh,48,ADODC,对象的主要事件,EndOfRecordset,事件,:当在结果集中移动记录指针时,当记录指针超出了结果集的最后一条记录时,触发此事件。,Error,事件,:只有在没有执行任何,VB,代码而发生了一个数据访问错误时,才会触发此事件。,WillChangeField,事件和,FieldChangeComplete,事件,:当对结果集中的一个或多个字段值进行修改前,触发,WillChangeField,事件;当对结果集中的一个或多个字段值修改之后,触发,FieldChangeComplete,事件。,WillChangeRecord,事件和,RecordChangeComplete,事件,:当对结果集中的一个或多个记录进行修改前,触发,WillChangeRecord,事件;当对结果集中的一个或多个记录修改之后,触发,RecordChangeComplete,事件。,WillMove,事件和,MoveComplete,事件,:在结果集的当前行记录指针移动之前,触发,WillMove,事件;在结果集的当前行记录指针移动完成后,触发,MoveComplete,事件。,49,RecordSet,对象的主要属性和方法,Recordset,属性也称为记录集或结果集,用于存放从数据提供者那里获得的查询结果,这个结果一般存放在客户端内存中,可以理解为是客户端的游标。,每个结果集有一个当前行指针,指向正在操作的记录。,在,VB,数据库应用程序中,一般不直接对数据库中的数据进行操作,而是通过记录集进行的。因此,记录集是,VB,应用程序和数据库之间相互连接的桥梁。,对数据库中数据的操作主要是通过,RecordSet,对象完成的。,50,RecordSet,对象的主要属性,BOF,:布尔值,如果结果集中记录的当前行指针移到了第一条记录的前边,则此值为真,否则为假。,EOF,:布尔值,如果结果集中记录的当前行指针移到了最后一条记录的后边,则此值为真,否则为假。,RecordCount,:存放结果集中的记录个数。,Sort,:将结果集中的记录按某个字段排序。,AbsolutePosition,:记录当前行记录在结果集中的顺序号,结果集记录序号从,1,开始。,ActiveCommand,:结果集中创建的命令。,ActiveConnection,:结果集中创建的连接。,Bookmark,:结果集中当前行记录的标识号。,Fields,:结果集中的字段集合。由于一行记录可以包含多个字段,因此,Fields,属性是一个数组形式,数组中的每个元素代表一个字段。,51,Fields,对象属性,Fields,属性本身也是一个对象,它直接指向,ADO,对象模型中的,Fields,对象。,Fields,对象用下述属性来描述结果集字段的信息:,Fields.Name,:字段名称。,Fields.Value,:字段的值。,Fields.OrdinalPosition,:字段在,Fields,集合中的顺序。,Fields.Type,:字段的数据类型。,Fields.Size,:字段的最大字节数。,Fields.SourceTable,:字段来自的表,Fields.SourceField,:字段来自的表中的列,52,RecordSet,对象的主要方法,RecordSet,对象的方法是实现结果集操作的关键。,Move,方法组,AddNew,方法,Update,方法,Delete,方法,CancelUpdate,方法,Find,方法,53,Move,方法组,Move,方法组就是实现在结果集中通过移动记录行指针而浏览数据的方法。,Move,方法组中又包括四个相应的移动指针的方法。,MoveFirst,方法:将当前行记录指针移到结果集中的第一行。,MovePrevious,方法:将当前行记录指针向前移动一行。,MoveNext,方法:将当前行记录指针向后移动一行。,MoveLast,方法:将当前行记录指针移到结果集中的最后一行。,54,AddNew,方法,AddNew,方法用于在结果集中添加一个新记录。,注意,当使用,AddNew,方法时,实际上只是在内存中开辟了一个新记录的缓冲区,缓冲区中的初始值均为控,新输入的记录被保存在这个缓冲区中。要使缓冲区中新输入的记录永久地保存到数据库中,还必须使用,Update,方法,或者对当前行记录指针作一个移动操作。,55,Update,方法,Update,方法将新记录缓冲区中的记录或者对当前记录的修改真正写到数据库中,使新添加的记录或修改后的结果被永久保存在数据库中。,56,Delete,方法,Delete,方法删除结果集中当前行记录指针所指的记录,并且这个删除是直接对数据库数据操作的,删除后的数据不可恢复。,因此,在使用此方法删除数据前,最好提示用户是否真的要删除数据,以避免由于误操作而造成数据丢失。,57,CancelUpdate,方法,CancelUpdate,方法用于取消新添加的记录或对当前记录所做的修改。,注意,此方法应在调用,Update,方法之前调用,调用了,Update,方法之后的修改是不能撤销的。,另外需要注意的是,如果没有添加新记录,也没有对当前记录进行任何修改,则调用,CancelUpdate,方法将产出错误。,58,Find,方法,Find,方法用于在当前结果集中查找满足条件的记录。如果结果集较大,则可以使用此方法在结果集快速定位找到满足要求的记录。,Find,方法的格式为:,ADODC,控件名,.Recordset.Find,(“查找条件表达式”),“查找条件表达式”中可以包含比较运算符、逻辑运算符和,Like,查找符。例如:查找年龄在,20,到,25,之间的学生:,Find,(“,Sage=20 AND Sage=25”,),59,数据绑定控件,数据绑定控件概念,数据绑定控件分类,数据绑定控件的主要属性,DataGrid,控件,60,数据绑定控件概念,数据绑定实际上就是将结果集中的数据同应用程序界面中的控件联系起来,通过这些界面上的控件将结果集中的数据显示给用户。能够实现将结果集中的数据显示出来的功能的控件就称为,数据绑定控件,。,数据绑定控件不但可以实现将结果集中的数据显示出来,而且用户还可以通过这些控件实现对数据库数据的增、删、改操作。,61,数据绑定控件分类,标准控件,常用的有:,TextBox,、,CheckBox,、,ListBox,、,ComboBox,等,。,这些控件只用于显示结果集中的一个列的值,因此,除了需要设置这些控件的,DataSource,属性,还需要设置这些控件的,DataField,属性,以确定绑定到结果集中的哪个列。,ActiveX,控件,主要有:,DataCombo,、,DataList,、,DataGrid,、,MSHFGrid,、,Microsoft Chart,等,。,62,数据绑定控件的主要属性,数据绑定控件主要通过两个属性来实现数据绑定,这两个属性是:,DataSource,和,DataField,属性。,DataSource,属性用于指定要,绑定的数据源,,,一般其值为,ADO,数据控件的名称。,一个数据绑定控件在一个时刻只能连接一个数据源。,DataField,属性用于指定控件要显示的结果集中的字段,其值为结果集中的列名。一个控件在一个时刻只能绑定到一个字段。,63,DataGrid,控件,添加,DataGrid,控件到工具箱中,DataGrid,控件应用举例,64,添加,DataGrid,控件到工具箱中,65,66,DataGrid,控件,67,DataGrid,控件应用举例,假设在窗体,Form1,中已设置好了一个,ADO,数据控件(名字为,Adodc1,),并且连接的数据源为,SQL Server,中的,“,学生管理数据库,”,中的,“,Student,”,表。,在窗体,Form1,添加一,DataGrid,控件(名字为,DataGrid1,),其,DataSource,属性设置为,Adodc1,。,执行程序显示结果为,Student,表,。,68,DataGrid1,控件绑定,Adodc1,控件,在,Form1,中添加,DataGrid1,控件,69,执行结果,70,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服