Доступ к VBA SQL: Написание предложения WHERE для сравнения данных локального и удаленного подключения ADO

#sql #vba #where-clause #ado

Вопрос:

У меня есть опыт работы с VBA для Excel, и недавно я начал использовать его для доступа для создания функций архивирования, которые будут перемещать записи из одной базы данных в отдельную.

Ключевым компонентом этого является идентификация записей в одном наборе записей (локальном), которых нет в другом (удаленном), перед выполнением комбинации вставки / удаления для эффективного перемещения записей из одного местоположения в другое.

  • Я могу открыть два соединения — одно локальное и одно удаленное — и создавать наборы записей на основе данных в каждой базе данных.
  • Что я не могу сделать, так это сравнить два набора записей, чтобы подтвердить, где идентификаторы в локальном наборе записей отсутствуют в идентификаторах в удаленном наборе записей.
  • На мой взгляд, пункт » ГДЕ » должен быть примерно таким:

Выберите * Из [tblName], Где localRecordSet.ID lt;gt; remoteRecordSet.ID

  • Но, будучи незнакомым с наборами записей ADO, я не верю, что могу ссылаться на идентификатор в таком наборе записей.
  • Я знаю, что могу создать цикл в VBA и циклически просматривать каждую запись в наборе записей, но ожидаю более простого способа сделать это непосредственно в предложении SQL WHERE

Кто-нибудь может указать мне правильное направление, пожалуйста? Большое спасибо, Марк