CRecordset :: snapshot больше не работает в VS2012 - какая альтернатива?

По-видимому, в VS2012 SQL_CUR_USE_ODBC устарел. [Обновление: похоже, что библиотека курсоров полностью удалена из VS2012].

База данных CD MFC больше не использует ее (тогда как это было по умолчанию для VS2010 и более ранних версий MFC), но вместо этого использует SQL_CUR_USE_DRIVER.

К сожалению, SQL_CUR_USE_DRIVER не работает должным образом с драйвером Jet ODBC (мы взаимодействуем с базой данных Access). Первоначально драйвер заявляет, что поддерживает позиционные операции (но не позиционные обновления), но, когда предпринимается попытка фактически запросить базу данных, все модели параллелизма терпят неудачу, пока библиотека MFC не переключается на взаимодействие только с чтением с базой данных (что не происходит). летать за нами).

Вопросы

Is this MS's latest attempt to force devs to move away from Jet based datasources and migrate to SQL Express (or the like)? Is there another modality that we should be using to interact with our Access databases through VS 2012 versions of MFC/ODBC?(1)

Смотрите также: http://social.msdn.microsoft.com/Forums/kk/vcmfcatl/thread/acd84294-c2b5-4016-b4d9-8953f337f30c

Обновление: при просмотре различных опций кажется, что библиотека курсоров была удалена из библиотеки ODBC VS2012. В сочетании с тем фактом, что Jet не поддерживает корректное позиционное обновление (2), он создает «снимок». режим неработоспособен. Похоже, что он поддерживает «dynaset» до тех пор, пока базовые таблицы имеют первичный ключ. Неопределяемые таблицы несовместимы с «dynaset» Режим (3). Итак, я могу придерживаться VS 2010, или я могу изменить свои таблицы, чтобы включить автонумерацию или что-то подобное, чтобы обеспечить доступность ключа, чтобы я мог использовать режим dynaset для наборов записей.

(1) например мы должны использовать другой открытый тип для CRecordset? В настоящее время мы используем CRecordset :: snapshot. Но я никогда по-настоящему не разбирался в снимках различных режимов, динамических, dynaset. Быстрый набор "попробуйте каждый" не удалось получить работающий обновляемый интерфейс для нашей базы данных доступа ...
(2) он запрашивает, когда запрашивается изначально, но затем возвращает ошибки для всех режимов параллелизма, которые он ранее поддерживал
(3) «динамический» также отсутствует, поскольку Jet вообще его не поддерживает (насколько я могу судить по моим тестам).

Ответы на вопрос(3)

Ваш ответ на вопрос