相信使用Excel 或 Access的用户,会用到ODBC连接到Sqlserver mysql oracle 或其它数据库,如果用过的用户都知道 ODBC分用户数据源与系统数据源,但最近在微软365的Access发现还有一种机器数据源,在之前 这个机器数据源均等同于系统数据源,但在365新版的Access发现 在Access中创建的Odbc机器数据源 在ODBC管理器的系统数据源中是看不到的。只有在
Access中才能看到
先来简单介绍一下ODBC数据源
ODBC(Open Database Connectivity,开放数据库互连)是微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。这些API利用SQL来完成其大部分任务。ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC。一组数据的位置,可以使用 ODBC驱动程序访问该位置。
二、ODBC的优点一个基于ODBC的应用程序对数据库的操作不依赖任何DBMS,不直接与DBMS打交道,所有的数据库操作由对应的DBMS的ODBC驱动程序完成。也就是说,不论是FoxPro、Access还是Oracle数据库,均可用ODBC API进行访问。由此可见,ODBC的最大优点是能以统一的方式处理所有的数据库
ODBC技术以C\S结构为设计基础,它使得应用程序与DBMS之间在逻辑上可以分离,使得应用程序具有数据库无关性。ODBC定义了一个API,每个应用程序利用相同的源代码就可以访问不同的数据库系统,存取多个数据库中的数据。与嵌入式SQL相比,ODBC一个最显著的优点是用它生成的应用程序与数据库或数据库引擎无关。
ODBC使应用程序具有良好的互用性和可移植性,并且具备同时访问多种DBS的能力,从而克服了传统数据库应用程序的缺陷。
三、ODBC分类作者:小辣椒高效Office
1、用户数据源(User Data Source):
这种数据源只对创建它的用户可见。
计算机\HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\userOdbc1
2、系统数据源
这种数据源对所有用户可见。它通常存储在系统配置中
32位与64位存在不同的位置
32位:
计算机\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\ODBC\ODBC.INI
64位:计算机\HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI
3. 机器数据源(有些电脑与系统数据源一样,有些版本则有区别)
我使用的这台电脑的机器数据源与系统数据源就有不同,
64位存放在
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun\REGISTRY\MACHINE\Software\ODBC\ODBC.INI\ODBC Data Sources
如果是32位,则存放在
计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun\REGISTRY\MACHINE\Software\Wow6432Node\ODBC\ODBC.INI\kingdee2
四、ODBC的组成部分一个完整的ODBC由下列几个部件组成:
1.应用程序(Application)。
2.ODBC管理器(Administrator)。该程序位于Windows控制面板(Control Panel)的管理工具内,其主要任务是管理安装的ODBC驱动程序和管理数据源。
3.驱动程序管理器(Driver Manager)。驱动程序管理器包含在ODBC32.DLL中,对用户是透明的。其任务是管理ODBC驱动程序,是ODBC中最重要的部件。
4.ODBC API。
5.ODBC 驱动程序。是一些DLL,提供了ODBC和数据库之间的接口。
6.数据源。数据源包含了数据库位置和数据库类型等信息,实际上是一种数据连接的抽象。
应用程序要访问一个数据库,首先必须用ODBC管理器注册一个数据源,管理器根据数据源提供的数据库位置、数据库类型及ODBC驱动程序等信息,建立起ODBC与具体数据库的联系。这样,只要应用程序将数据源名提供给ODBC,ODBC就能建立起与相应数据库的连接。
在ODBC中,ODBC API不能直接访问数据库,必须通过驱动程序管理器与数据库交换信息。驱动程序管理器负责将应用程序对ODBC API的调用传递给正确的驱动程序,而驱动程序在执行完相应的操作后,将结果通过驱动程序管理器返回给应用程序。
在访问ODBC数据源时需要ODBC驱动程序的支持。多数情况下Windows系统已经安装了SQL Server、 Access、 Paradox、 dBase、 FoxPro、 Excel、 Microsoft Text等驱动程序,可直接使用,而Mysql Oracle 一些高版本这些数据源驱动程序需要自己手动安装。
希望对您有所帮助,可点,赞,及,关,注,我