`
lovnet
  • 浏览: 6724862 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论

冰冻三尺 之 "访问数据库"

 
阅读更多

几个数据库的小例子敲完了,一般一个例子也就是分成了三部分,对数据库的访问,对数据库的操作和释放数据库的数据,而这几个例子都是用的ADO模型,接下来分析一下ADO模型

首先ADO模型和系统的数据库是什么关系


图中说的很清晰明了,ADO相当于应用程序和数据之间的一个媒介,应用程序通过ADO模型来

对数据进行操作,而ODBC,OLEDB等又是ADO和数据库之间的一个桥梁,ODBCOLEDB将数据库中的数据转换成ADO能够识别的数据然后传递给ADO

几个概念如下

【ODBC】 是一种底层的访问技术,因此,ODBCAPI可以是客户应用程序能从底层设置和控制数据库,完成一些高级数据库技术无法完成的功能;但不足之处由于ODBC只能用于关系型数据库,使得利用ODBC很难访问对象数据库及其他非关系数据库。

一个完整的ODBC由下列几个部件组成:

  应用程序(Application)。

  ODBC管理器(Administrator)。该程序位于Windows控制面板(Control Panel)的32位ODBC内,其主要任务是管理安装的ODBC驱动程序和管理数据源。

  驱动程序管理器(DriverManager)。驱动程序管理器包含在ODBC32.DLL中,对用户是透明的。其任务是管理ODBC驱动程序,是ODBC中最重要的部件。

  ODBC API。

  ODBC驱动程序。是一些DLL,提供了ODBC和数据库之间的接口。

  数据源。数据源包含了数据库位置和数据库类型等信息,实际上是一种数据连接的抽象。

  应用程序要访问一个数据库,首先必须用ODBC管理器注册一个数据源,管理器根据数据源提供的数据库位置、数据库类型及ODBC驱动程序等信息,建立起ODBC与具体数据库的联系。这样,只要应用程序将数据源名提供给ODBC,ODBC就能建立起与相应数据库的连接。

  在ODBC中,ODBCAPI不能直接访问数据库,必须通过驱动程序管理器与数据库交换信息。驱动程序管理器负责将应用程序对ODBCAPI的调用传递给正确的驱动程序,而驱动程序在执行完相应的操作后,将结果通过驱动程序管理器返回给应用程序。

  在访问ODBC数据源时需要ODBC驱动程序的支持。可以安装SQLServer、 Access、 Paradox、 dBase、 FoxPro、 Excel、 Oracle 和MicrosoftText等驱动程序.在缺省情况下,只会安装SQL Server、 Access、FoxPro和dBase的驱动程序.如果用户需要安装别的驱动程序,则需要重新运行安装程序并选择所需的驱动程序。

【OLE DB 】是用于访问数据的重要的系统级编程接口,它是 ADO 的基础技术,同时还是ADO.NET 的数据源.

ODBC OLE DB的关系

ODBC标准的对象是基于SQL 的数据源(SQL-Based Data Source),而OLE DB的对象则是范围更为广泛的任何数据存储。从这个意义上说,符合ODBC 标准的数据源是符合OLE DB 标准的数据存储的子集。符合ODBC标准的数据源要符合OLE DB 标准,还必须提供相应的OLE DB 服务程序(Service Provider),就像SQL Server 要符合ODBC标准,必须提供SQL Server ODBC 驱动程序一样。现在,微软自己已经为所有的ODBC 数据源提供了一个统一的OLE DB 服务程序,叫做ODBCOLE DB Provider。实际上,ODBC Provider 的作用,是替换ODBC Driver Manager,作为应用程序与ODBC驱动程序之间的桥梁,理论上不会增加任何开销。

  

ADO 是基于OLEDB的访问接口,它是面向对象的OLE DB技术,继承了OLE DB的优点。属于数据库访问的高层接口

OLEDB和ODBC都是底层系统,都可直接对数据库进行访问,区别在于OLEDB既可以访问关系型数据库,也可访问非关系型数据库,而ODBC只能访问关系型数据库。虽然对不同数据库的操作方法不一样,但统一了通向不同的数据源的底层应用程序接口。

+ ADO是对象模型,也就是一组对象的集合,这里一共两类其中对象。

独立型对象:

connection:连接数据库

command用于查询

recordset用于记录

依赖性对象

field记录字段信息依赖 recordset

parameter用参数查询提供数据依赖 command



property用于访问特定对象主要信息依赖独立型对象

error错误处理依赖 connection




下面是通过Connection对象创建SQL ServerODBC数据源的连接.

首选定义连接对象Set objCnName = New ADODB.Connection

1.使用jet连接Access数据库

objCnName.ConnectionString= "provider=microsoft.jet.oledb.3.51;" & "dataasource=" & App.Path & "\*.Mdb"

objCnName.Open"mySQLODBC", "sa", "" '这里的mySQLODBC 是配置ODBC数据源是的文件名

2.打开SQL Server数据源连接

objCnName.ConnectionString= "Provider=SQLOLEDV;database=myvbdatavase;" &"server=(local);integrated security=sspi"

objCnName.Open

3.使用DSN标记打开ODBC数据源连接

objCnName.ConnectionString= "DSN=mySQLODBC;UID=sa;PWD=;"

objCnName.Open

4.使用DSN标记打开ODBC只不过访问别人机子上的数据库.

objCnName.ConnectString= "Provider=SQLOLEDB;Data Source=192.168.24.176;InitialCataLog=Student;UID=sa;PWD=123"

objCnName.Open ConnectionString

5.使用DSNOLEDB 标记打开连接

 objCnName.ConnectionString = "datasource=mySQLODBC;user id =sa ;password=;"

objCnName.Open

objName.open方法,打开数据源连接

objName.Close 方法,关闭数据源连接

Set objName = nothing释放数据

冰冻三尺非一日之寒,巨大的进步在于点点滴滴的积累.

分享到:
评论

相关推荐

    冰冻三尺非一日之寒.doc

    冰冻三尺非一日之寒.doc

    mariadb windows 数据库工具

    mariadb windows 数据库工具,一个可以在windows系统上直接安装数据库的工具,操作简单便捷。简单易用

    thirteen_1:冰冻三尺非一日之寒

    git基本操作/*我们使用 git clone 从现有 Git 仓库中拷贝项目*/git clone "Git仓库" "本地目录" git clone git@github.com:hao-1172624289/thirteen.git//SSH协议(快速、安全)git clone git://github....

    数据结构基础

    如果将开发程序的过程比喻为作战,我们码农便是指挥作战的将军,而我们所写的...冰冻三尺非一日之寒,需要我们平时不断的主动去学习积累。 通过几天的学习,我们希望让大家能理解其概念,掌握常用的数据结构和算法。

    服务器安全防护措施.docx

    要及时更新服务器系统的杀毒软件以及病毒数据库,必要时,可针对比较特殊的病毒,安装专门的杀毒程序,同时要定期查杀服务器的系统病毒,定期查看CPU的正常工作使用状态、后台工作进程以及应用程序等。如若发现异常...

    front-end-knowledge:前端知识整理,便于系统得学习、复习、查漏补缺

    学院派-气宗: 从底层学起讲究内功心法,操作系统、计算机组成原理、计算机网路、数据库、编译原理、汇编 C C++ JAVA 等通用编程语言、算法与数据结构、设计模式、前端语言标准发展逻辑 优缺点 设计原理、浏览器解析...

    VB 入门PPT

    vb 入门初级教程 初学的不能急,冰冻三尺,非一日之寒

    数据结构与算法高清

    我们举一个可能不太恰当的例子: 如果将最终写好运行的程序比作战场,我们码农便...冰冻三尺非一日之寒,需要我们平时不断的主动去学习积累。 通过三天的学习,我们希望让大家能理解其概念,掌握常用的数据结构和算法。

    软件企业核心能力建设探索(杭州软件工程大会).ppt

    软件企业核心能力的建设 能力有一个培养的过程 认识自己的能力现状 确定相匹配的业务方向 培养未来所需的能力 持续的能力建设 一个新的领域的能力的积累至少需要三...冰冻三尺,非一日之寒 能力建设永远优先于生产任务

    实战GUI产品的自动化测试

    冰冻三尺非一日之寒,和产品开发一样,产品的自动化测试系统也需要通过迭代开发不断强化,逐步解决效率瓶颈,更广泛、更灵活的支持产品开发的需求。那么,如何从无到有建立图形用户界面(GUI)产品的自动化测试系统...

    考研数学150分是这样练成的

    <br> 数学考研题的重要特征之一就是综合性强、知识覆盖面广,一些稍有难度的试题一般比较灵活,对知识点串联的要求比较高,只有通过逐步的训练,不断积累解题经验,在考试时才更有机会较快找到突破口。...

    编程数据结构之二叉树讲义

    这是一份我上课的课件,有详细的二叉树教学,对学习数据结构的人帮助很大

    大学课件数据结构之栈和队列

    课件 ,学习数据结构很有帮助,其实我不想写这么多的 ,喜欢的人看到就会下载了

    GitHubDesktop

    GitHubDesktop 是一款便捷的 git 操作工具,不习惯和不喜欢 git 命令的看官可以下载使用 GitHubDesktop 官网下载太慢了。。。。

    人脸识别系统

    基于matlab的静态人脸识别技术。 英文资料。 主要是对于PCA的一个简单应用

    nacos-server-1.1.4

    nacos-server-1.1.4 是当前 阿里巴巴出品nacos 系列中最稳当的一款 中间服务注册系统。

    TortoiseSVN1.11.0

    小乌龟,大家都懂的,svn 操作工具,这里提供下载路径,也是给自己留下一个下载口。有需要的请下载,小乌龟可以搭配其他的一块使用,操作简单

    wordpress-5.4.2-zh_CN

    wordpress-5.4.2-zh_CN 是当前 5.4.2 系列中最新中文版本。 wordpress 是一款操作简单的博客工具, 现已逐渐变成一款文档编辑工具等

    jdk-8u151-linux-x64

    Linux 操作系统安装对应 jdk 环境, 64位可用 适合任意 Cenos操作系统。

    apache-maven-3.6.1

    apache-maven-3.6.1 用于windows maven 库部署的部署包。主要是用于给自己留一个下载版本入口。有需要的欢迎下载

Global site tag (gtag.js) - Google Analytics