Мне удалось запросить данные через openquery.
ВЫБЕРИТЕ *ИЗ ОТКРЫТОГО ЗАПРОСА (LINKEDHELL, «ВЫБЕРИТЕ *ИЗ [D :\path\mordor.mdb].Orcs»)
Я могу вставлять/обновлять/удалять через openquery (из Sql Management Studio)
Я создал базу данных, которая предоставляет представление, обертывающее выражение openquery. Это позволяет моим приложениям не обращать внимания на тот факт, что они запрашиваются через соединение со связанным сервером, и позволяет мне использовать ORM. Показательный пример :Entity Framework.
Однако, пока извлечение данных работает, обновление/вставка/удаление не будут. Я потратил довольно много времени на то, чтобы убедиться, что MSDTC настроен правильно, но без кубиков.
МСДТК
Другое
Ошибка, которую я получаю:
OLE DB provider "MSDASQL" for linked server "LINKEDHELL" returned message "[Microsoft][ODBC Microsoft Access Driver]Invalid attribute/option identifier ".
Msg 7391, Level 16, State 2, Line 4
The operation could not be performed because OLE DB provider "MSDASQL" for linked server "LINKEDHELL" was unable to begin a distributed transaction.
Я могу просто воссоздать это, выполнив это из Sql Management Studio
begin distributed transaction
//anything that queries the linked server
commit transaction
Так что я пропустил? Я читал, что распределенные транзакции поддерживаются драйвером ODBC, но не уверен, поддерживает ли это база данных ACCESS. Так что если кто-то может хотя бы подтвердить это. Это поможет.