[精选]数据库访问技术论述.pptx
《[精选]数据库访问技术论述.pptx》由会员分享,可在线阅读,更多相关《[精选]数据库访问技术论述.pptx(56页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、使用使用VB访问访问SQLSever数据库数据库生长生长体积体积重量重量颜色颜色属性属性名词名词1.体积变大体积变大2.重量变重重量变重3.颜色变红颜色变红将具有相同数据特征和行为特将具有相同数据特征和行为特征的所有的对象称为一个对象类征的所有的对象称为一个对象类苹果类苹果类1.警铃响了警铃响了摘摘方法主方法主动动词动动词事件被事件被动动词动动词某一个苹果某一个苹果对象对象类是型的概念,对象是值得概念类是型的概念,对象是值得概念树叶树叶树根树根树干树干某一个苹果树某一个苹果树苹果苹果某一个对象的属性可以是数值型、字某一个对象的属性可以是数值型、字符型、也可以是另一个对象符型、也可以是另一个对象
2、在下面的界面中有几个对象?在下面的界面中有几个对象?数据库访问技术数据库访问技术1.JET与与DAO2.ODBC与与RDO3.OLEDB与与ADOJET与与DAOJETJointEngineTechnology数据连接引擎技数据连接引擎技术:术:1991年末或年末或92年初,年初,MS发布了发布了ACCESS作为其作为其Windows桌面数据库,桌面数据库,ACCESS使用了使用了JET数据库引擎。数据库引擎。MicrosoftJet数据库引擎数据库引擎MicrosoftJetDatabaseEngine一个数据库管理系统,它在用户及系统数据库中检索和存储数据。一个数据库管理系统,它在用户及系
3、统数据库中检索和存储数据。MicrosoftJet数据库引擎可以被视为数据管理器组件,通过它可构数据库引擎可以被视为数据管理器组件,通过它可构建其他数据访问系统例如,建其他数据访问系统例如,MicrosoftAccess和和MicrosoftVisualBasic。MicrosoftJet数据库数据库使用使用MicrosoftJet数据库引擎创立的数据库。数据库引擎创立的数据库。MicrosoftJet数据数据库的文件扩展名是库的文件扩展名是.mdb。JET仅为仅为ACCESS数据库效劳。数据库效劳。JET与与DAODAODataAccessObject数据访问对象数据访问对象在开发在开发JE
4、T引擎时,在其上增加了一个对象层,引擎时,在其上增加了一个对象层,叫做数据访问对象叫做数据访问对象DAO。DAO可以翻开可以翻开DataBase的连接、访问或创立表,的连接、访问或创立表,对表执行对表执行SQL语句语句ACCESS数据库数据库*.mdb通过通过JET应用程序应用程序使用使用DAO访问数据库访问数据库数据访问对象数据访问对象DataAccessObjects:是一种面向对象的界面接口。是一种面向对象的界面接口。通过通过DAO/Jet功能可以访问功能可以访问ISAM顺序索引查顺序索引查找方法数据库。找方法数据库。使用使用DAO的程序编码非常简单,的程序编码非常简单,DAO提供丰富提
5、供丰富的游标的游标Cursor类型的结果集和非游标类型的结果集和非游标CursorLess类型的结果集,同类型的结果集,同DDL数据数据描述语言的功能很类似。描述语言的功能很类似。DAO模型是设计关系数据库系统结构的对象类的模型是设计关系数据库系统结构的对象类的集合。集合。它们提供了完成管理这样一个系统所需的全部操作的它们提供了完成管理这样一个系统所需的全部操作的属性和方法,包括创立数据库,定义表、字段和索引,属性和方法,包括创立数据库,定义表、字段和索引,建立表间的关系,定位和查询数据库等工具。建立表间的关系,定位和查询数据库等工具。ODBC与与RDOODBCOpenDatabaseConn
6、ectivity开开放数据库互连放数据库互连MS意识到许多人都拥有后端的数据库,如意识到许多人都拥有后端的数据库,如Oracle、DB2等,因此发布等,因此发布JET的同时也推出了的同时也推出了一个数据访问层。一个数据访问层。ODBC:是是MS建议并开发的数据库建议并开发的数据库API标准,为异种数据库提标准,为异种数据库提供了统一的访问接口,屏蔽了不同供了统一的访问接口,屏蔽了不同DBMS的差异,使的差异,使数据库应用系统不仅仅局限于某个数据库应用系统不仅仅局限于某个DBMS。ODBC的设计思想的设计思想是允许从桌面到中等范围以及大型机上数据库的透明是允许从桌面到中等范围以及大型机上数据库的
7、透明访问。访问。ODBC与与RDORDORemotDataObject远程数据对象远程数据对象产生背景产生背景在应用程序在直接访问在应用程序在直接访问ODBC时,由于时,由于ODBC不是基不是基于对象的,主要是通过调用一些于对象的,主要是通过调用一些APIApplicationProgrammingInterface应用编程接口访问后端数应用编程接口访问后端数据库的,虽然据库的,虽然ODBC的执行效率比的执行效率比DAO要快得多要快得多,但,但编程工作却非常困难,而且错误处理时也不友好。编程工作却非常困难,而且错误处理时也不友好。例如:完成如下的数据库操作,翻开一个例如:完成如下的数据库操作,
8、翻开一个DataBase并并修改一个修改一个Table使用使用DAO需要写需要写5行代码行代码使用使用ODBCAPI函数大概需要函数大概需要30行代码行代码因此提出了因此提出了RDORDORemotDataObject远程数据对象远程数据对象是建立在是建立在ODBC之上的对象模型,提供如同之上的对象模型,提供如同DAO一样的易用性,同时又拥有几乎和一样的易用性,同时又拥有几乎和ODBCAPI一样的速度。一样的速度。使用使用DAO/ODBCDirect功能可以实现远程功能可以实现远程RDO功能功能关系数据库关系数据库SQLSever200、Oracle、Access等等通过通过ODBC应用程序应
9、用程序使用使用RDO访问数据库访问数据库DAOJETRDOODBCJET通知通知ODBC访问效劳器数据库访问效劳器数据库数据库数据库DataBaseODBC允许允许JET或或RDO访问效劳器数访问效劳器数据库据库JET不能直接访问效劳器不能直接访问效劳器ACCESSJET可以直接访问可以直接访问ACCESS数据库数据库缺点缺点DAO与与RDO只能处理后台为关系数据库的只能处理后台为关系数据库的DBMS,不能解决通用数据存储及通用数据访问。不能解决通用数据存储及通用数据访问。例如:一个例如:一个Email系统需要存储多媒体文件以及其系统需要存储多媒体文件以及其他数据,比方说将一个他数据,比方说将
10、一个Excel表格存储于该系统之表格存储于该系统之中,中,DAO与与RDO都不能访问。都不能访问。OLEDB与与ADOOLEDBObjectLinkingandEmbeddingforDataBase数据库对象链接和嵌入数据库对象链接和嵌入MS采用通用数据访问的方法,采用通用数据访问的方法,“你自己保存数据,你自己保存数据,我们给你提供一种方法来访问这些数据。我们给你提供一种方法来访问这些数据。实际上就是一种进行关系型数据和非关系型数据实际上就是一种进行关系型数据和非关系型数据一样的技术。一样的技术。OLEDB定义:定义:MS提供一种对各类应用程序均适用的,采用提供一种对各类应用程序均适用的,
11、采用ODBC接接口,通过结构化查询语言口,通过结构化查询语言SQL对数据库进行访问操作对数据库进行访问操作的总体解决方案。的总体解决方案。设计目的:设计目的:为了给多种多样的应用程序提供优化功能为了给多种多样的应用程序提供优化功能OLEDB与与ADOADOActiveXDataObjectActiveX数据数据对象对象OLEDB和和ODBC一样是一种底层的一样是一种底层的API,其上层,其上层对象模型是对象模型是ADO。ADO几乎兼容所用的数据库系统。几乎兼容所用的数据库系统。定义定义一种数据访问接口,可与符合一种数据访问接口,可与符合OLEDB的数据源通信,的数据源通信,以连接、检索、操作和
12、更新数据。以连接、检索、操作和更新数据。优点:优点:与与DAO和和RDO相比,模型非常小相比,模型非常小不是层次式结构,每个主要对象都可以独立创立。不是层次式结构,每个主要对象都可以独立创立。什么是层次式结构?什么是层次式结构?Excel中把一个数放进一个单元格,不能仅创中把一个数放进一个单元格,不能仅创立单元格,需要创立一个工作表,工作表需立单元格,需要创立一个工作表,工作表需要一个工作簿,工作簿又在要一个工作簿,工作簿又在Excel程序中,因程序中,因此存储一个数据,必须先创立一个此存储一个数据,必须先创立一个Excel对象,对象,在访问。在访问。应用系统应用系统ADOOLEDB游标游标引
13、擎引擎查询查询引擎引擎Shape引擎引擎OLEDB电子电子表格表格ODBCSQLISAM目录目录效劳效劳文件文件系统系统数据使用者数据使用者由由OLEDB提供的效劳提供的效劳数据提供者数据提供者DAOJETRDOODBCJET通知通知ODBC访问效劳器数据库访问效劳器数据库数据库数据库DataBaseODBC允许允许JET或或RDO访问效劳器数访问效劳器数据库据库ADOOLEDBOLEDB可以使用可以使用ODBC或自身提供或自身提供的方法访问数据库的方法访问数据库ACCESSJET可以直接访问可以直接访问ACCESS数据库数据库ADO对象的组成对象的组成七个对象:七个对象:Connection
14、,mand,Parameter,Recordset,Field,Property,Error.四个集合:四个集合:Fields,Properties,Parameters,Errors.Connection对象对象Connection对象连接对象:对象连接对象:是是ADO的首要对象,它建立与数据源的连接、管的首要对象,它建立与数据源的连接、管理程序对数据的一切操作。理程序对数据的一切操作。对数据源的任何操作都需要建立一个对数据源的任何操作都需要建立一个Connection对象,因此对象,因此Connection对象是对象是ADO的基础。的基础。主要功能:主要功能:Connection对象提供与
15、包含路径,口令和连接对象提供与包含路径,口令和连接选项的数据源的链接;选项的数据源的链接;声明:通常声明为全局变量声明:通常声明为全局变量DimcnAsNewADODB.ConnectionConnection属性属性1、ConnectionString属性属性包含用于建立连接数据源的信息。包含用于建立连接数据源的信息。ConnectionString用多项用多项“设置项设置项=值的方式来设定与值的方式来设定与数据源的连接,每个项之间用分号隔开。数据源的连接,每个项之间用分号隔开。对于连接字符串的写法,精确固定的语法是没有的。因对于连接字符串的写法,精确固定的语法是没有的。因为不同类型数据库,
16、有各自的设置项。为不同类型数据库,有各自的设置项。例如:指定例如:指定1个个OLEDB连接,连接字符串可写为:连接,连接字符串可写为:cn.ConnectionString=Provider=SQLOLEDB.1;Password=sa;PersistSecurityInfo=True;UserID=sa;InitialCatalog=library;DataSource=SERVER01SHU032、ConnectionTimeout属性属性设置连接时的最长等待时间,缺省为设置连接时的最长等待时间,缺省为15秒,超时秒,超时还未连接成功的话,中止连接,并返回出错信息。还未连接成功的话,中止连
17、接,并返回出错信息。Connection属性属性Connection方法方法1、Open方法:方法:建立与数据源的物理连接。建立与数据源的物理连接。格式:格式:connection.OpenConnectionString,UserID,Password,Options注意:该方法是使注意:该方法是使Connection获得初始化的方获得初始化的方法,只有使用了该方法,法,只有使用了该方法,Connection对象才真正对象才真正在内存中存在。在内存中存在。后面的参数都是可选参数,最简单如:后面的参数都是可选参数,最简单如:cn.Open但如果这样则需要预先设置好但如果这样则需要预先设置好Co
18、nnectionString等参数。等参数。两种方式翻开连接两种方式翻开连接第一种,先为第一种,先为ConnectionString赋值赋值cn.ConnectionString=Provider=SQLOLEDB.1;Password=sa;PersistSecurityInfo=True;UserID=sa;InitialCatalog=library;DataSource=SERVER01SHU03cn.Open第二种,直接第二种,直接Opencn.OpenProvider=SQLOLEDB.1;Password=sa;PersistSecurityInfo=True;UserID=sa
19、;InitialCatalog=library;DataSource=SERVER01SHU03Connection方法方法2、Close方法:方法:关闭关闭1个数据连接对象,使该连接对象只留在本个数据连接对象,使该连接对象只留在本机内存中,可对其属性更改后再重新建立连接。机内存中,可对其属性更改后再重新建立连接。注意:如果不是关闭对象,而是将对象从内注意:如果不是关闭对象,而是将对象从内存中去除,应使用存中去除,应使用Setconnection对象变量对象变量=Nothing.Setcn=NothingConnection方法方法3、Execute方法:方法:执行执行1个个SQL查询,既可是
20、选择查询,也可是动查询,既可是选择查询,也可是动作查询。作查询。如:如:Setrst=cn.Execute“select*FromstudentwhereSnamelike张张%“但要注意:使用但要注意:使用Connection对象的对象的Execute方方法返回的游标类型是最基本的只能读和只能向前法返回的游标类型是最基本的只能读和只能向前移动的游标移动的游标adOpenForwardOnly,因此,如果,因此,如果该方法执行一个选择查询返回一个记录集时特别该方法执行一个选择查询返回一个记录集时特别要明白。要明白。Recordset对象对象Recordset对象记录集对象对象记录集对象用来管理
21、某个查询返回的记录集以及记录集中的用来管理某个查询返回的记录集以及记录集中的游标。游标。声明:对每一个需要操作的查询结构可以声声明:对每一个需要操作的查询结构可以声明一个明一个Recordset对象对象DimcnAsNewADODB.RecordsetRecordset属性属性1、CursorType属性属性游标类型游标类型AdOpenForwardOnly:仅向前游标,默认值。仅向前游标,默认值。除了只能在记录中向前滚动外,与静态游标相同。除了只能在记录中向前滚动外,与静态游标相同。当只需要在记录集中单向移动时,使用它可提高性能。当只需要在记录集中单向移动时,使用它可提高性能。顾名思义,这种
22、游标只能向前移动。顾名思义,这种游标只能向前移动。AdOpenKeyset:键集游标。键集游标。从你自己的记录集不能访问其他用户删除的记录,无从你自己的记录集不能访问其他用户删除的记录,无法查看其他用户添加的记录,但仍然可以看见其他用法查看其他用户添加的记录,但仍然可以看见其他用户更改的数据。户更改的数据。KeySet游标允许你看见自它创立起其他用户所做的修游标允许你看见自它创立起其他用户所做的修改,然而你却不能看到其他用户增加或删除的记录。改,然而你却不能看到其他用户增加或删除的记录。AdOpenDynamic:动态游标。:动态游标。Dynamic游标可以看到他们保存记录集合的所有变化。游标
23、可以看到他们保存记录集合的所有变化。使用使用Dynamic游标的用户可以看到其他用户所做的编游标的用户可以看到其他用户所做的编辑、增加、删除。辑、增加、删除。如果数据提供者允许这种类型的游标,那么它是通过每如果数据提供者允许这种类型的游标,那么它是通过每隔一段时间从数据源重取数据来支持这种可视性的。毫隔一段时间从数据源重取数据来支持这种可视性的。毫无疑问这会需要很多的资源。无疑问这会需要很多的资源。此类型的游标功能强大同时也是消耗系统资源最多的游此类型的游标功能强大同时也是消耗系统资源最多的游标。标。AdOpenStatic:静态游标。:静态游标。可以用来查找数据或生成报告的记录集合的静态副本
24、。可以用来查找数据或生成报告的记录集合的静态副本。另外,对其他用户所作的添加、更改或删除不可见。另外,对其他用户所作的添加、更改或删除不可见。Static类游标只是数据的一幅快照。这就是说,它无法类游标只是数据的一幅快照。这就是说,它无法看到自它创立以后其他用户对看到自它创立以后其他用户对RecordSet所做的修改。所做的修改。采用这类游标你可以向前和向后航行。采用这类游标你可以向前和向后航行。由于其功能简单,资源的需求比由于其功能简单,资源的需求比Dynamic要小!要小!需要注意的是:需要注意的是:一旦翻开一旦翻开RecordSet,你就无法改变,你就无法改变CursorType属性。属
25、性。但是,如果你首先关闭但是,如果你首先关闭RecordSet,改变,改变CursorType属性,然后重新翻开属性,然后重新翻开RecordSet,那么你仍可以有效地改变游标的类型!那么你仍可以有效地改变游标的类型!Recordset属性属性2、LockType属性属性在任何同时可被多用户修改的数据库应用程序中,在任何同时可被多用户修改的数据库应用程序中,你必须处理可能发生的多个用户同时对同一条记你必须处理可能发生的多个用户同时对同一条记录进行操作时的情况。录进行操作时的情况。当这种情况出现时,数据的完整性就会受到威胁,当这种情况出现时,数据的完整性就会受到威胁,这是因为一个用户可能会在不自
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精选 数据库 访问 技术 论述
限制150内