Доступ к данным: ADO и RDO
Обновлен: Ноябрь 2007
В представленной ниже таблице описаны две базовые технологии, обеспечивающие работу элементов управления источников данных или элементов управления с привязкой к данным.
ADO
ADO — это COM-оболочка OLE DB, которая упрощает написание приложений доступа к данным (потребителей). OLE DB — это основанная на COM универсальная технология доступа к данным, позволяющая использовать любой источник данных, а не только индексированный, методы последовательного доступа (ISAM) и базы данных на основе SQL.Поставщики OLE DB могут осуществлять доступ к данным из различных источников данных и не ограничиваются запросами SQL для получения данных, а могут использовать запросы так, как определено в поставщике.
RDO
RDO — это COM-оболочка ODBC. ODBC представляет собой API-интерфейс на основе языка C, который позволяет осуществлять доступ к данным общего назначения (разнородным). Однако в качестве командного языка для доступа к данным RDO использует SQL.Можно использовать элементы управления доступа к данным на основе ADO вместо RDO.
В следующей таблице приведены основные различия между элементами управления ADO и RDO.
Элементы управления с привязкой к данным
Элементы управления RDO с привязкой к данным используют интерфейсы ICursor; элементы управления ADO используют интерфейс OLE DB IRowset. В обоих случаях интерфейсы, используемые элементами управления, возвращают наборы строк.Элементы управления RDO с привязкой к данным были разработаны специально для наиболее эффективной работы с Visual Basic. Поэтому некоторые функциональные возможности, особенно — форматирование, недоступны в приложениях Visual C++. Эта проблема отсутствует в элементах управления ADO с привязкой к данным.
Элементы управления данными
Элементы управления ADO реализуют интерфейс IDataSource, а элементы управления RDO — интерфейс IVBDSC. Можно вызвать метод IDataSource для получения указателя интерфейса IRowset. Аналогично этому можно вызвать метод IVBDSC для получения указателя интерфейса ICursor.
См. также
Ссылки
Привязка данных в Visual C++ с помощью элементов управления ActiveX