ODBC数据源

ODBC(Open Database Connectivity,开放数据库互连)是微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。这些API利用SQL来完成其大部分任务。ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC。所以对数据库的操作,就可以通过ODBC来完成,而不同种类的数据库,会提供不同的ODBC驱动,来达到通过ODBC访问数据库的目的。这样的数据库也就叫做ODBC数据源。

一个基于ODBC的应用程序对数据库的操作不依赖任何DBMS,不直接与DBMS打交道,所有的数据库操作由对应的DBMS的ODBC驱动程序完成。也就是说,不论是FoxPro、Access还是Oracle数据库,均可用ODBC API进行访问。由此可见,ODBC的最大优点是能以统一的方式处理所有的数据库。

ODBC技术以C\S结构为设计基础,它使得应用程序与DBMS之间在逻辑上可以分离,使得应用程序具有数据库无关性。ODBC定义了一个API,每个应用程序利用相同的源代码就可以访问不同的数据库系统,存取多个数据库中的数据。与嵌入式SQL相比,ODBC一个最显著的优点是用它生成的应用程序与数据库或数据库引擎无关。

嵌入式SQL是将SQL语句直接写入C语言,COBOL,FORTRAN, Ada等编程语言的源代码中的方法。在这一方法中,将SQL文嵌入的目标源码的语言称为宿主语言。数据库厂商需要提供一个嵌入式SQL的预编译器,把包含有嵌入式SQL文的宿主语言源码转换成纯宿主语言的代码。这样一来,源码即可使用宿主语言对应的编译器进行编译。通常情况下,经过嵌入式SQL的预编译之后,原有的嵌入式SQL会被转换成一系列函数调用。因此,数据库厂商还需要提供一系列函数库,以确保链接器能够把代码中的函数调用与对应的实现链接起来。

比如IBM的Db2数据库支持的C 语言的嵌入式 SQL,模板文件如下:

而ODBC使应用程序具有良好的互用性和可移植性,并且具备同时访问多种DBS的能力,从而克服了传统数据库应用程序的缺陷。

ODBC组成

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

2,ODBC 驱动程序。是一些DLL,提供了关于指定数据库的ODBC功能接口。

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

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

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

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

在访问ODBC数据源时需要ODBC驱动程序的支持。比如,SQL Server、 Access、 Paradox、 dBase、 FoxPro、 Excel、 Oracle 和Microsoft Text等驱动程序。

ODBC驱动

ODBC驱动程序是一种软件标准,可以让不同的应用程序共享数据。ODBC驱动程序有很多种,包括Microsoft® SQL Server™、Microsoft Access、Oracle®和许多其他的。ODBC驱动程序可以让你定义数据库连接的信息, 包括数据源名称(data source name / DSN)、文件夹、数据库的驱动程序,以及用户的ID和密码。

An ODBC driver is a software standard that lets different applications share data. There are ODBC drivers for Microsoft® SQL Server™, Microsoft Access, Oracle® and many others. The ODBC driver lets you define information for connecting to databases in SQL Server, including the directory source name (DSN), directory, driver of the database, and the ID and password of the user.

Windows下的ODBC Data Source Administrator工具

Microsoft® ODBC数据源管理工具负责管理数据库驱动程序和数据源。这个应用程序位于Windows控制面板中的管理工具下。从Windows 8开始,该图标被命名为ODBC Data Sources,在64位操作系统中,有32位和64位版本。

打开ODBC Data Source Adaministrator工具方法,以Win10为例:

1, 打开控制面板,选择System and Security

2,找到并打开Administrative Tools.

3, 在工具列表里,选择ODBC Data Sources(64-bit)并打开。

4, 打开ODBC Data Source Adaministrator工具,就可以添加、修改和删除数据源。

数据源是由驱动程序访问的数据库或文件,由数据源名称(data source name/DSN)标识。使用ODBC Data Source Administrator工具来添加、配置和删除系统中的数据源。可以使用的数据源的类型在下表中描述:

Data source

Description

User

User DSN是本地计算机数据源,只能由当前用户使用。此数据源在HKEY_CURRENT_USER注册表中注册。

System

System DSNs也是本地计算机数据源,但不局限于某个用户使用。 系统或任何有权限的用户可以使用用系统DSN设置的数据源。System DSNs在HKEY_LOCAL_MACHINE注册表中注册。

File

文件DSN是基于文件的数据源,可以在所有安装了相同驱动程序的用户之间共享,因此可以访问数据库。这些数据源不需要专属于某个用户,也不要求是本地数据源。文件数据源名称不是由专门的注册表项来识别的,而是由带有.dsn扩展名的文件名来识别。文件数据源存储在C:/Program Files/Common Files/ODBC/Data Sources。

用户和系统数据源统称为机器数据源,因为它们是计算机的本地数据。在ODBC数据源管理员对话框中, 这两种数据源各占一个标签。

5,以Excel文件为例,添加一个数据源。

在User DSN标签下,点击Add按钮。

我们看这里列出了一些系统已经安装好的ODBC驱动,比如Access数据库驱动、文本/CSV文件驱动、Excel文件驱动、SQL Server等。

我们选择Excel文件驱动,然后就要给数据源命名,添加描述,然后选择一个Workbook文件。

点击OK,这样一个Excel文件的数据源就做好了。

参考:

Create an ODBC data source on 64-bit computers

ODBC Data Source Administrator - Host Integration Server | Microsoft Docs+

ODBC数据源_百度百科

嵌入式SQL_百度百科

IBM Docs

知识点滴 - 在Win10里添加Excel的ODBC数据源相关推荐

  1. [转]win7-64位系统添加access的ODBC数据源 看不到其它数据源的问题

    原文:http://www.linuxso.com/windows/18912.html 日期:2012-02-10 来源: copier8 分享至:  刚学jsp,今天照着教材做一个创建access ...

  2. 自己添加ODBC数据源的Access驱动

    一般情况下,在电脑的控制面板,ODBC数据源,里面添加ODBC数据源的时候,都有各种驱动,选择自己需要的即可: 但是有的电脑上可能没什么驱动:如下: 现在假设要添加Access的ODBC数据源,怎么办 ...

  3. 计算机在表格顶端添加标题,Excel表格图标上方显示数据-怎样在excel图标里添加图表元素?...

    桌面的EXCEL表格文件图标变成这样了,怎么恢复? 桌面的EXCEL表格文件图标恢复正常的具体步骤如下: 我们需要准备的材料分别是:电脑.EXCEL表格文件图标. 1.首先我们打开电脑,点击打开计算机 ...

  4. arcgis怎么关联excel表_在arcgis中添加excel表格数据-ArcGIS如何将Excel里的数据关联至地图上...

    ArcGIS如何将Excel里的数据关联至地图上 1.打开一个arcgis工程文件. 2.在左侧窗口中右击面要素文件,选择"open attribute table". 3.在出现 ...

  5. 计算机里找不到网络映射盘,怎么win10上添加网络映射盘_win10添加网络映射盘的方法...

    工作中经常会使用到电脑,好多网友留言说怎么win10上添加网络映射盘?映射网络驱动一般是在局域网中有用,可以把分机的共享的那个盘符映射到主机的版电脑上,这样主机可以权直接地调用分机的共享文件.默认情况 ...

  6. 往map里的vector添加_往鱼缸里添加硝化细菌,这些事项我们还是要注意的!

    图文/养鱼老道 原创 关于往鱼缸里添加硝化细菌一说,养鱼老道只是认为一般的时候没有这个必要,但不是说不可以适当添加,因为以前养鱼老道也会经常这么干的,只是一个是由于现在的假货太多,即使有真的我也不爱去 ...

  7. android系统设置在哪里,android-如何在系统settings里添加设置选项

    版本:2.3.1 目的:在通话设置菜单下,添加一dect设置菜单,里面再添加一checkBOxPreference 来使能硬件模块. ------------------------- 目前做的项目, ...

  8. 知识点滴:持久层,DAO,API,DAL,BLL,DLL,csproj,sln

    知识点滴:持久层,DAO,API,DAL,BLL,DLL,csproj,sln 摘自: http://www.cnblogs.com/niuniu1985/archive/2009/12/10/162 ...

  9. 计算机报临时用户,大师练习win10系统添加临时登录账户win10电脑临时账户的办法?...

    大师练习win10系统添加临时登录账户win10电脑临时账户的办法? ? ? win10系统有一些隐秘的东西不希望别人看到的话该怎样办?其实这个时候我们就可以通过设置临时游客账户来保护隐私,那么win ...

最新文章

  1. tomcat服务器介绍之二 、session服务器实现方法
  2. 供销大集长期持有_谁是下一个供销大集?(附股)
  3. 前端学习(3321):瀑布流的方式演示
  4. EasyExcel项目使用
  5. 文字组合生成器_万字长文神器,原来只是固定数据库排列组合而成
  6. 从3年前接触区块链,到开发出装机量最大客户端Geth,看看人家的职业发展之路 | 人物志...
  7. Python进阶(三)单例设计模式
  8. 薄荷Toolbar(ActionBar)的适配方案
  9. Intellij IDEA2017安装破解
  10. vivado 开发教程(二) 使用IP集成器
  11. 三子棋 小游戏 C++
  12. 基于STM32的空气质量监测系统简单案例
  13. 三维扫描仪中投射模块/投影仪推荐
  14. 声纹识别技术如何助力金融反欺诈?
  15. shopex mysql索引_mysql版本太高导致shopex4.8.5无法安装
  16. drupal用户注册邮件smtp及社会化登录模块安装
  17. 【性能定位】使用jstack定位线程堆栈信息
  18. Windows扫雷游戏秘籍
  19. mysql的主句与从句_什么是从句和主句
  20. 计算机丢失logmanager dll,修复logmanager.dll

热门文章

  1. linux跳板机权限管理,开源跳板机(堡垒机)Jumpserver v0.2.0 使用说明
  2. ubuntu 20.04 安装synergy 记录
  3. boat启动器 minecraft_我的世界boat启动器
  4. 城市规划图例符号_城市规划设计图层图例
  5. 【愚公系列】2023年03月 Java教学课程 063-原子性
  6. FLEX 4.6 Spark DataGrid 一些的用法
  7. 魔兽世界美服部落人数最多服务器,魔兽世界美服8.3人口普查_人口普查
  8. 论文浅尝 | 最新10篇《知识图谱》论文推荐(ICML, CVPR, ACL, KDD, IJCAI 2019)
  9. tftp 源代码解析
  10. 【无标题】求各大ios shsh版本!能不能给大哥?