Как заставить Entity Framework работать с данной процедурой?

Есть некоторая процедура ItemExists(itemProperty), которая, проверяет, есть ли запись со значением itemProperty в выборке. Выборка берется из двух таблиц с двух разных серверов (при участии openquery). При вызове процедуры напрямую в SSMS она срабатывает без ошибок. Но когда ее вызывает EntityFramework она падает с двумя ошибками:
The operation could not be performed because OLE DB provider "MSDASQL" for linked server "SERVER_B" was unable to begin a distributed transaction.
OLE DB provider "MSDASQL" for linked server "SERVER_B" returned message "[Pervasive][ODBC Client Interface][LNA][Pervasive][ODBC Engine Interface]Driver not capable.".

В процедуре выполняются только select-запросы.
Часть с openquery выглядит так:
select * from openquery (SERVER_A, 'select * from openquery(SERVER_B, ''select prop from table_b where Date > ''''2018-01-01'''''')'))
  • Вопрос задан
  • 91 просмотр
Решения вопроса 1
@d-stream
Готовые решения - не подаю, но...
Driver not capable - собственно вот вся причина.

подозреваю что ровно такая же ошибка будет даже при попытке выполнить запрос "select 'Hello, World!'" или "select @@version"
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы