В чем разница между adodb и oledb? - PullRequest
33 голосов
/ 22 сентября 2010

В чем разница между adodb и oledb?

Какая связь между этими двумя?

Где ado.net стоит в контексте adodb и oledb?

Ответы [ 2 ]

38 голосов
/ 22 сентября 2010

Adodb (БД объектов данных ActiveX) - это уровень API поверх OLE DB.Он хорошо работает с базами данных на базе MS, такими как Sql Server, обеспечивая согласованный API и оптимизацию.Это значит, что вы можете использовать ADODB для соединения с источниками данных не MS, но это будет означать, что вам потребуется поставщик OLEDB / ODBC для источника данных.

Проще говоря, для подключения к любому источнику данных необходим драйвер.Вот несколько общих сценариев, о которых следует подумать:

  1. ADODB для источника данных, который имеет только драйвер ODBC - ADODB использует поставщика ODEDB для ODBC, который загружает драйвер ODBC, который затем подключается к источнику данных.
  2. ADODB для источника данных с драйвером OLEDB (например, SQL Server) - ADODB использует провайдер OLEDB для SQL Server для прямой связи с БД.

Oledb (связывание объектов и встраивание БД) - это стандартный формат, поддерживаемый большим количеством дБ, поэтому вы можете подключиться к oracle, db2 и т. Д. С помощью Oledb.Вы также можете использовать OLEDB напрямую для подключения к Sql Server, но API более сложен по сравнению с соединением adodb, оптимизированным для работы с Sql Server и MS Access.

ADO.Net - это соединение на основе базы данных на основе .Net"архитектура".В ADO.Net есть библиотека для Oledb - System.Data.OledbClient.Adodb был заменен / обновлен, и ADO.Net теперь использует библиотеку System.Data.SqlClient для баз данных / поставщиков данных на базе MS.

7 голосов
/ 06 мая 2016
  • ADO - это COM-библиотека для доступа к базам данных.
  • OleDB и ODBC являются стандартами для связи с базами данных.
  • ADO использует OleDB для связи с любой базой данных, которая предоставляет драйвер OleDB.
  • Существует также драйвер OleDB, который может обернуть любой драйвер ODBC. Таким образом, ADO может также общаться с любой базой данных, которая предоставляет драйвер ODBC.

  • ADO.NET (a.k.a. System.Data) - библиотека на основе .NET для доступа к базам данных.
  • ADO.NET имеет встроенную поддержку SQL Server, OleDB и ODBC
  • Третьи стороны могут предоставить свою базу данных ADO.NET, создав ADO.NET-совместимую библиотеку
  • Третьи стороны также могут предоставлять свою базу данных ADO.NET, предлагая драйвер OleDB или ODBC
...