为何创建 ODBC?
在过去,公司使用单个 DBMS。 所有数据库访问都是通过此系统的前端或通过专门与此系统配合使用而编写的应用程序完成的。 然而,随着计算机的普及以及越来越多的计算机硬件和软件出现,公司开始购买不同的 DBMS。 原因有很多:价格因素、运行速度快慢、知名度、市面最新款、对单个应用程序的适用性。 还有公司重组和合并的原因,以前拥有单个 DBMS 部门的公司现在拥有多个 DBMS 部门。
随着个人电脑的出现,这个问题变得更加复杂。 个人电脑提供了大量用于查询、分析和显示数据的工具,以及大量便宜、易于使用的数据库。 从那时起,一家公司的数据经常分散在无数的台式机、服务器和小型机上,并存储在各种不兼容的数据库中,由大量不同的工具访问,很少有工具能够获取所有数据。
最严峻的挑战是客户端/服务器计算的出现,其试图充分利用计算机资源。 桌面上的连接个人电脑(客户端)为数据提供图形前端和许多便宜的工具,例如电子表格、图表程序和报表生成器。 小型计算机和大型计算机(服务器)托管 DBMS,其可以利用这些计算机的计算能力和中心位置来提供快速、协调的数据访问。 那么,前端软件是如何连接到后端数据库的?
独立软件供应商 (ISV) 也面临着类似的问题。 为小型计算机和大型计算机编写数据库软件的供应商通常被迫为每个 DBMS 编写一个应用程序版本,或者为其想要访问的每个 DBMS 编写特定于 DBMS 的代码。 为个人电脑编写软件的供应商必须为每个要使用的不同 DBMS 编写数据访问例程。 这通常意味着大量的资源用于编写和维护数据访问例程而不是应用程序,并且应用程序的销售往往不是基于其质量,而是基于其是否可以访问给定 DBMS 中的数据。
两组开发人员都需要一种访问不同 DBMS 中数据的方法。 大型计算机和小型计算机组的开发人员需要一种将来自不同 DBMS 的数据合并到单个应用程序中的方法,而个人电脑组的开发人员也需要这种方法以及编写独立于任何 DBMS 的单个应用程序的方法。 简言之,这两组的开发人员都需要一种可互操作的方式来访问数据;他们需要开放式数据库连接。