1、解决什么样的问题?
不同的数据库产品,具有不同的特性,也就是方言。因此应用程序针对不同的数据库产品,编写不同的代码。如果换了一个数据库产品,还需要重新编写数据库交互部分,不具备扩展和移植。odbc对数据库进行了封装,对应用程序提供一致的接口。
2、odbc(Open DataBase Connectivity),开放数据库互联,由微软提出,后来被unix接受。odbc提供一组标准的数据库访问接口。odbc是怎么做到的?
3、odbc是驱动管理器,针对不同的数据库产品,有对应的驱动程序。可以这样认为,针对不同的数据库产品,需要相应的适配器,这个适配器就是驱动,而odbc就是适配器的管理器。odbc中管理了一组适配器,添加数据源的时候,需要指定Ip地址,数据库,登录名,密码,以及适配器,为这个数据源取个名称。
4、Linux中 /etc/odbcinst.ini 配置了一组驱动程序,也就是数据库的适配器,为每个适配器取个名称。
5、Linux中 /etc/odbc.ini 配置了数据源,其中的Driver可以引用odbcinst.ini中适配器名称,也可以指定适配器的动态库。

理解odbc的更多相关文章

  1. ODBC的基础架构

    *) 基本概念:1. 应用程序(Application)2. ODBC驱动管理器(ODBC Driver Manager) 负责管理应用程序和驱动程序间的通信,主要功能包括:解析DSN (数据源名称, ...

  2. ODBC,OLEDB,ADO,ADO.net,JDBC 理解

    一 .ODBC 开放式数据库互联(Open Database connectivity), 93年微软推出的实现应用程序 和关系数据库直接 通讯的借口标准.只能用于关系数据库 . 注意事项 : 必须先 ...

  3. WIN7 64位上 MYSQL的ODBC一些个人理解

    最近电脑中毒了,无奈之下把32位的xp换成了64位的win7,无聊耗时的搭完开发环境,装了vs6.0(忽略掉一切的不兼容),装完64位的mysql(“mysql-5.6.10-winx64.zip”) ...

  4. ODBC、OLE DB、 ADO的区别

    转自:http://blog.csdn.net/yinjingjing198808/article/details/7665577 一.ODBC ODBC的由来 1992年Microsoft和Syba ...

  5. SQL Server代理(5/12):理解SQL代理错误日志

    SQL Server代理是所有实时数据库的核心.代理有很多不明显的用法,因此系统的知识,对于开发人员还是DBA都是有用的.这系列文章会通俗介绍它的很多用法. 如我们在这个系列的前几篇文章所见,SQL ...

  6. 第五篇 SQL Server代理理解代理错误日志

    本篇文章是SQL Server代理系列的第五篇,详细内容请参考原文. 正如这一系列的前几篇所述,SQL Server代理作业是由一系列的作业步骤组成,每个步骤由一个独立的类型去执行.在第四篇中我们看到 ...

  7. 【转载】OLE DB, ADO, ODBC关系与区别

    原文:OLE DB, ADO, ODBC关系与区别 OLE DB, ADO, ODBC 一. ODBC(Open Database Connectivity,开放数据库互连)是微软公司开放服务结构(W ...

  8. hive-jdbc/odbc的解读和看法

    当前的项目中, 涉及到了hive-jdbc/odbc这块, 因此把这几天所调研的资料作一份总结.本文讲解hive-jdbc/hive-odbc的实现, 以期对jdbc/odbc规范和实现有个较深入的理 ...

  9. 【转】ODBC、OLE DB、 ADO的区别

    一.ODBC ODBC的由来 1992年Microsoft和Sybase.Digital共同制定了ODBC标准接口,以单一的ODBC API来存取各种不同的数据库.随后ODBC便获得了许多数据库厂商和 ...

随机推荐

  1. 自己封装的OKhttp请求

    package com.create.qdocumentimtest.rxjavatest; import com.squareup.okhttp.Callback; import com.squar ...

  2. 【转】用 SVN Importer 实现 CSVNT 到 SVN 的转换

    转载地址:http://www.blogjava.net/yongbing/archive/2007/03/04/101761.html 用 SVN Importer 实现 CSVNT 到 SVN 的 ...

  3. 清空html代码

    不要使用 $("XXX").html(""); 清空html代码块一般有两种方式: 1)非miniui等组件区块:$("#id").empt ...

  4. ural 1106,二分图染色,DFS

    题目链接:http://acm.timus.ru/problem.aspx?space=1&num=1106 乍一眼看上去,好像二分图匹配,哎,想不出和哪一种匹配类似,到网上查了一下,DFS染 ...

  5. phpcms 02

    头部和尾部包含 1 默认的首页模板 C:\wamp\www\phpcms\templates\ypzy2014\content\index.html 打开模板查看 第一句 {template &quo ...

  6. python学习笔记三 文件操作(基础篇)

    文件操作 打开文件 open(name[,mode[,buffering]])   open函数使用一个文件名作为强制参数,然后返回一个文件对象.[python 3.5 把file()删除掉]   w ...

  7. Java程序中调用Python脚本的方法

    在程序开发中,有时候需要Java程序中调用相关Python脚本,以下内容记录了先关步骤和可能出现问题的解决办法. 1.在Eclipse中新建Maven工程: 2.pom.xml文件中添加如下依赖包之后 ...

  8. [转]NSTimer和CADisplayLink的基本用法

    简要区别:NSTimer初始化器接受调用方法逻辑之间的间隔作为它的其中一个参数,预设一秒执行30次.CADisplayLink默认每秒运行60次,通过它的frameInterval属性改变每秒运行帧数 ...

  9. 在HTML5规范中div中读取预存的data-[key]值

    HTML 代码: <div id="div_test" data-test="this is test" ></div> jQuery ...

  10. SQL 根据指定字符拆分字符串

    CREATE FUNCTION [dbo].[F_StringSplit] ( @STR NVARCHAR(MAX)='', )='') )) AS BEGIN DECLARE @NUM INT, @ ...