VB 6.0: доступ к данным с помощью технологии ADO
Сравнение ADO с RDO и DAO
Хотя ADO в целом покрывает функциональность DAO и RDO, она не является совместимой с ними на уровне языка программирования. Это означает, что модернизация уже существующих программ для использования ADO потребует как минимум преобразования кода приложения. В некоторых случаях коррекция программ сводится к достаточно простой замене функций, но порой, особенно для наиболее эффективного использования новых возможностей ADO, может потребоваться более серьезная переработка.
DAO (Data Access Objects) был первым объектно-ориентированным интерфейсом, включенным в механизм работы с базами данных Microsoft Jet (используется в Microsoft Access). Он позволял VB-программистам работать также с широким кругом реляционных баз данных через технологию ODBC. DAO наилучшим образом подходит для относительно небольших, локальных баз данных.
RDO (Remote Data Objects) является объектно-ориентированным интерфейсом доступа к данным, в котором сочетается простой стиль программирования DAO с высокой производительностью и гибкостью низкоуровневых функций ODBC. Доступ к локальным базам данных Jеt и ISAM выполняется в RDO через драйверы ODBC, что снижает его быстродействие по сравнению с DAO. Однако RDO обеспечивает возможность работы с большим числом БД различных разработчиков, предоставляя средства доступа к таким элементам, как, например, запоминаемые процедуры и сложные результирующие наборы данных.
ADO является преемником DAO/RDO. В этой технологии реализована другая объектная модель: объектов стало меньше, но при этом их структура стала иерархической, увеличилось число свойств, методов, аргументов и событий. Функциональность ADO 2.0 наиболее близка к RDO, она работает с источниками данных, имеющих интерфейс OLE DB, обеспечивая поддержку DHTML-технологий и взаимодействие в данные, не имеющие постоянного подключения в сети. В настоящее время ADO не поддерживает весь спектр функций DAO, в частности язык определения данных (DDL). Microsoft обещает включить в будущие версии ADO компоненты DDL. По-видимому, не следует выполнять миграцию в ADO для большинства приложений, использующих DAO (возможно, кроме случая применения ODBCDirect), непосредственно сейчас, хотя для клиент-серверных приложений это уже имеет смысл.