使用VB访问数据库
ODBC的设计思想
是允许从桌面到中等范围以及大型机上数据库的透明 访问。
ODBC与RDO
RDO(Remot Data Object)远程数据对象
产生背景
在应用程序在直接访问ODBC时,由于ODBC不是基 于对象的,主要是通过调用一些API( Application Programming Interface 应用编程接口)访问后端数 据库的,虽然ODBC的执行效率比DAO要快得多,但 编程工作却非常困难,而且错误处理时也不友好。
使用DAO的程序编码非常简单,DAO提供丰富 的游标(Cursor)类型的结果集和非游标 (Cursor Less)类型的结果集,同DDL(数 据描述语言)的功能很类似。
DAO模型是设计关系数据库系统结构的对象类的 集合。
它们提供了完成管理这样一个系统所需的全部操作的 属性和方法,包括创建数据库,定义表、字段和索引, 建立表间的关系,定位和查询数据库等工具。
ODBC与RDO
ODBC(Open Database Connectivity)开 放数据库互连
MS意识到许多人都拥有后端的数据库,如 Oracle、DB2等,因此发布JET的同时也推出了 一个数据访问层。
ODBC:
是MS建议并开发的数据库API标准,为异种数据库提 供了统一的访问接口,屏蔽了不同DBMS的差异,使 数据库应用系统不仅仅局限于某个DBMS。
使用DAO/ODBC Direct功能可以实现远程RDO 功能
应用程序 使用RDO访问数据库
通过ODBC
关系数据库
(SQL Sever200、 Oracle、
AccDBC
JET可以直接访问 ACCESS数据库
ACCESS
JET通知ODBC 访问服务器数据库
JET不能直接访问服务器
使用VB访问SQL Sever数据库
属性 (名词)
体积
重量
颜色
某一个苹果
对象
将具有相同数据特征和行为特 征的所有的对象称为一个对象类
(苹果类)
类是型的概念,对象是值的概念
1. 体积变大 2. 重量变重 3. 颜色变红
生长
方法(主 动动词)
摘 事件(被 动动词)
1. 警铃响了
某一个对象的属性可以是数值型、字 符型、也可以是另一个对象
MS提供一种对各类应用程序均适用的,采用ODBC接 口,通过结构化查询语言SQL对数据库进行访问操作 的总体解决方案。
设计目的:
为了给多种多样的应用程序提供优化功能
OLE DB与ADO
ADO(ActiveX Data Object) ActiveX 数据 对象
OLE DB和ODBC一样是一种底层的API,其上层 对象模型是ADO。ADO几乎兼容所用的数据库系 统。
Microsoft Jet 数据库
使用 Microsoft Jet 数据库引擎创建的数据库。Microsoft Jet 数据 库的文件扩展名是 .mdb。
JET仅为ACCESS数据库服务。
JET与DAO
DAO(Data Access Object)数据访问对象
在开发JET引擎时,在其上增加了一个对象层, 叫做数据访问对象(DAO)。
应用系统
OLE DB
ADO
数据使用者
游标 引擎
查询 引擎
定义
一种数据访问接口,可与符合 OLE DB 的数据源通信, 以连接、检索、操作和更新数据。
优点:
与DAO和RDO相比,模型非常小 不是层次式结构,每个主要对象都可以独立创建。
什么是层次式结构?
Excel中把一个数放进一个单元格,不能仅创 建单元格,需要创建一个工作表,工作表需 要一个工作簿,工作簿又在Excel程序中,因 此存储一个数据,必须先创建一个Excel对象, 再访问。
Microsoft Jet 数据库引擎(Microsoft Jet Database Engine )
一个数据库管理系统,它在用户及系统数据库中检索和存储数据。 Microsoft Jet 数据库引擎可以被视为数据管理器组件,通过它可 构建其他数据访问系统(例如,Microsoft Access 和 Microsoft Visual Basic)。
ODBC允许JET或 RDO访问服务器数 据库
数据库 (DataBase)
缺点
DAO与RDO只能处理后台为关系数据库的DBMS, 不能解决通用数据存储及通用数据访问。
例如:一个Email系统需要存储多媒体文件以及其 他数据,比方说将一个Excel表格存储于该系统之 中, DAO与RDO都不能访问。
OLE DB与ADO
OLE DB(Object Linking and Embedding for DataBase)数据库对象链接和嵌入
MS采用通用数据访问的方法,“你自己保存数 据,我们给你提供一种方法来访问这些数据。”
实际上就是一种进行关系型数据和非关系型数据 一样的技术。
OLE DB定义:
DAO可以打开DataBase的连接、访问或创建表, 对表执行SQL语句
应用程序 使用DAO访问数据库
通过JET
ACCESS 数据库
(*.mdb)
数据访问对象(Data Access Objects):是一 种面向对象的界面接口。
通过DAO/Jet功能可以访问ISAM(顺序索引查 找方法)数据库。
例如:完成如下的数据库操作,打开一个DataBase 并修改一个Table
使用DAO需要写5行代码 使用ODBC API函数大概需要30行代码
因此提出了RDO
RDO(Remot Data Object)远程数据对象
是建立在ODBC 之上的对象模型,提供如同 DAO一样的易用性,同时又拥有几乎和ODBC API一样的速度。
树叶
树根
树干
某一个苹果树
苹果
在下面的界面中有几个对象?
数据库访问技术
1. JET与DAO 2. ODBC与RDO 3. OLE DB与ADO
JET与DAO
JET(Joint Engine Technology)数据连接引擎技 术:
1991年末或92年初,MS发布了ACCESS作为其Windows 桌面数据库,ACCESS使用了JET数据库引擎。