gpt4 book ai didi

database - ODBC 和 OleDB 有什么区别?

转载 作者:太空狗 更新时间:2023-10-30 01:45:24 24 4
gpt4 key购买 nike

我在这里发现了这个问题:OLEDB v/s ODBC

这给了我更多信息,但并没有真正回答我要问的问题,所以我将从那里继续。

我在 C# 工作。关于我是如何遇到这个难题的,我不会长篇大论地告诉您,但基本上我是在尝试在 ODBC 和 oleDB 之间做出决定。

我们与许多不同的客户合作,他们拥有各种各样的数据库(一些 SQL,一些 oracle,一些我从未听说过并且懒得记住名称的东西)

现在,据我了解,ODBC 很旧,并且曾经是/现在是标准。现在 OleDB 出现了……是……不同吗?但完成同样的事情(它与数据库对话)

为什么我要使用一个而不是另一个? ODBC 是(根据上面的帖子)跨平台的,这很好,但他提供的信息很少,因为 OleDB 提供了 ODBC 不提供的内容。

在我的其他研究中,我发现(在 MSDN 论坛上)人们说“如果可以,请使用 OleDB,如果必须,请求助于 ODBC”,当然,这没有给出任何理由,所以我想听一些。

最佳答案

ODBC 是一个用于访问数据库的 C API。它有一个标准,每个主要数据库供应商都支持它,它有很好的文档记录,它是跨平台的。 OLEDB 是一个类似的接口(interface),它使用 Microsoft 的 COM 技术而不是 C API。这意味着它只能在支持 COM 的平台上轻松使用。

归根结底,这两个库提供的基本功能大致相同。事实上,一些 OLEDB 驱动程序实际上使用 ODBC 而不是 native 数据库。

因此,如果您是在 Windows 上工作的 C# 开发人员,OLEDB 是两者之间的明显选择。如果您正在使用 C(或不使用 COM 的 C++),或者需要跨平台支持,那么 ODBC 是更好的选择。

关于database - ODBC 和 OleDB 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1178243/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com