什么是ODBC接口

什么是ODBC接口,第1张

ODBC是一种连接数据库的开放标准。

ODBC(Open DataBase Connectivity,开放数据库互连)是微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。这些API利用SQL来完成其大部分任务。ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC。

它本身就是为了是数据库的使用者不必考虑使用的是何种数据库而只需要相同的 *** 作而设计的。

ODBC是Open Database Connect即开放数据库互连的简称,它是由Microsoft 公司于1991 年提出的一个用于访问数据库的统一界面标准,是应用程序和数据库系统之间的中间件。它通过使用相应应用平台上和所需数据库对应的驱动程序与应用程序的交互来实现对数据库的 *** 作,避免了在应用程序中直接调用与数据库相关的 *** 作,从而提供了数据库的独立性。

ODBC 主要由驱动程序和驱动程序管理器组成。驱动程序是一个用以支持ODBC 函数调用的模块,每个驱动程序对应于相应的数据库,当应用程序从基于一个数据库系统移植到另一个时,只需更改应用程序中由ODBC 管理程序设定的与相应数据库系统对应的别名即可。驱动程序管理器可链接到所有ODBC 应用程序中,它负责管理应用程序中ODBC 函数与DLL 中函数的绑定。

ODBC 使用层次的方法来管理数据库,在数据库通信结构的每一层,对可能出现依赖数据库产品自身特性的地方,ODBC 都引入一个公共接口以解决潜在的不一致性,从而很好地解决了基于数据库系统应用程序的相对独立性,这也是ODBC 一经推出就获得巨大成功的重要原因之一。

从结构上分,ODBC 分为单束式和多束式两类。

1单束式驱动程序

单束式驱动程序介于应用程序和数据库之间,像中介驱动程序一样数据提供一个统一的数据访问方式。当用户进行数据库 *** 作时,应用程序传递一个ODBC 函数调用给ODBC 驱动程序管理器,由ODBC API 判断该调用是由它直接处理并将结果返回还是送交驱动程序执行并将结果返回。由上可见,单束式驱动程序本身是一个数据库引擎,由它直接可完成对数据库的 *** 作,尽管该数据库可能位于网络的任何地方。

2多束式驱动程序

多束式驱动程序负责在数据库引擎和客户应用程序之间传送命令和数据,它本身并不执行数据处理 *** 作而用于远程 *** 作的网络通信协议的一个界面。前端应用程序提出对数据库处理的请求,该请求转给ODBC 驱动程序管理器,驱动程序管理器依据请求的情况,就地完成或传给多束驱动程序,多束式驱动程序将请求翻译为特定厂家的数据库通信接口(如Oracle 的SQLNet)所能理解的形式并交于接口去处理,接口把请求经网络传送给服务器上的数据引擎,服务器处理完后把结果发回给数据库通信接口,数据库接口将结果传给多束式ODBC 驱动程序,再由驱动程序将结果传给应用程序。

在关系数据库实现过程中,第一步是建立关系模式,定义基本表的结构,即该关系模式是哪些属性组成的,每一属性的数据类型及数据可能的长度、是否允许为空值以及其它完整性约束条件。

定义基本表:

CREATETABLE([列级完整性约束条件]

[,[列级完整性约束条件]]

[,[列级完整性约束条件]]

[,表列级完整性约束条件]);

说明:

1、中是SQL语句必须定义的部分,[]中是SQL语句可选择的部分,可以省略的。

2、CREATETABLE表示是SQL的关键字,指示本SQL语句的功能。

3、是所要定义的基本表的名称,一个表可以由一个或若干个属性(列)组成,但至少有一个属性,不允许一个属性都没有的表,这样不是空表的含义。

多个属性定义由圆括号指示其边界,通过逗号把各个属性定义分隔开,各个属性名称互不相同,可以采用任意顺序排列,一般按照实体或联系定义属性的顺序排列,关键字属性组在最前面,这样容易区分,也防止遗漏定义的属性。

4、每个属性由列名、数据类型、该列的多个完整性约束条件组成。其中列名一般为属性的英文名缩写,在MicrosoftAess2010中也可以采用中文,建议不要这样做,编程开发时不方便。

5、完整性约束条件,分为列级的完整性约束和表级的完整性约束,如果完整性约束条件涉及该表的多个属性列,则必须定义在表级上,否则既可以定义在列级也可以定义在表级。

这些完整性约束条件被存入系统的数据字典中,当用户 *** 作表中数据时由RDBMS自动检查该 *** 作是否违背这些完整性约束,如果违背则RDBMS拒绝本次 *** 作;

这样保持了数据库状态的正确性和完整性,不需要用户提供检查,提高了编程的效率,降低了编程难度。列级的完整性通常为主关键字的定义、是否允许为空。表级的完整性约束条件一般为外码定义。

数据 *** 纵

数据 *** 纵语言是完成数据 *** 作的命令,一般分为两种类型的数据 *** 纵。

1、数据检索(常称为查询):寻找所需的具体数据。

2、数据修改:插入、删除和更新数据。

数据 *** 纵语言一般由INSERT(插入)、DELETE(删除)、UPDATE(更新)、SELECT(检索,又称查询)等组成。由于SELECT经常使用,所以一般将它称为查询(检索)语言并单独出现。

JDBC引擎接口。

JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序,同时,JDBC也是个商标名。

JDBC 也是个"低级"接口,换句话说,它用于直接调用 SQL 命令。在这方面它的功能极佳,并比其它的数据库连接 API 易于使用,但它同时也被设计为一种基础接口,在它之上可以建立高级接口和工具。高级接口是"对用户友好的"接口,它使用的是一种更易理解和更为方便的 API,这种API在幕后被转换为诸如 JDBC 这样的低级接口。

在关系数据库的"对象/关系"映射中,表中的每行对应于类的一个实例,而每列的值对应于该实例的一个属性。于是,程序员可直接对 Java 对象进行 *** 作;存取数据所需的 SQL 调用将在"掩盖下"自动生成。此外还可提供更复杂的映射,例如将多个表中的行结合进一个 Java 类中。

以上就是关于什么是ODBC接口全部的内容,包括:什么是ODBC接口、sql关系数据库(SQL关系数据库查询命令)、Java的数据库连接方式是什么,简要叙述之。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10104526.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存