【问题标题】:what are the differences between OLEDB and ODBC?OLEDB 和 ODBC 有什么区别?
【发布时间】:2010-07-28 08:17:10
【问题描述】:

目前我可以通过 Oledb 连接连接到本地 .mdb。我能够以正确的结果查询、添加、更新和删除数据库。

连接到 ODBC 数据库在 c# 使用方面与 Oledb 数据库有何不同?

【问题讨论】:

  • 这和C#有什么关系?

标签: c# odbc oledb


【解决方案1】:

连接可能仅在连接字符串上有所不同(并且可能在控制面板中设置 ODBC 连接),但用于连接的 .NET 类都实现了 IDbConnection/Command/Transaction 等,因此非常相似。在 C# 中你有 OleDbConnection 和 OdbcConnection,我相信 - 但同样两者都实现了基本接口。

可以在这里找到简短的概述:

http://database.ittoolbox.com/documents/odbc-vs-oledb-18150

大多数数据库供应商支持 ODBC,因为它被设计为一种共享连接机制,但同样,大多数供应商提供或更喜欢另一种(Oracle ADO.NET 提供程序、MySQL 提供程序等)。

要么通用,要么如果它只是一个小型应用程序,请选择最适合目标数据库的应用程序。

【讨论】:

    【解决方案2】:

    【讨论】:

      【解决方案3】:

      Microsoft 设计了 ​​ODBC 来访问 SQL 数据和 OLE DB 来访问 COM 环境中的任何类型的数据。总之……

      【讨论】:

        【解决方案4】:

        我的主要经验是 C/C++ 和 ODBC,但我也将 ODBC 和 OLEDB 与 C# 一起使用。

        在 C# 中使用 ODBC 涉及实际 ODBC API 调用和程序之间的抽象层,因此在某些情况下,您可能会发现优化驱动程序的使用更加困难或不可能。对于一般用法和简单查询,您应该没问题。

        OLE DB 设计为与 C# 一起使用,因此所有 API 调用都应该可用。

        【讨论】:

        • OLE DB 设计为仅与 C# 一起使用?
        【解决方案5】:

        连接到 ODBC 数据库在 c# 使用方面与 Oledb 数据库有何不同?

        如果您使用简单的 sql 语句,例如 c# 和标准的 .net 数据提供程序,它不会选择更新删除等。不同之处在于 ODBC 需要设置 DSN 才能使用它,尽管严格来说并非如此。

        埃德

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-04-15
          • 1970-01-01
          • 1970-01-01
          • 2011-04-04
          • 2010-10-02
          • 2011-12-12
          • 2010-09-16
          • 2012-03-14
          相关资源
          最近更新 更多