Ошибка «Недопустимый оператор SQL» при попытке выполнить хранимую процедуру SQL Server из Access

Я работаю на виртуальной машине, где мой SQL-сервер и MS Access находятся. Я установил соединение ODBC из Access to SQL и связал несколько таблиц. Я могу выполнять обычные операции над этими таблицами (выбрать / обновить и т. Д.).

НО я не могу запустить хранимую процедуру по какой-то странной причине! Процедура отлично работает в SSMS, но не тогда, когда я вызываю ее из Access VBA. Ниже приведен код, который я использую для выполнения процедуры (мне также нужно передать 3 параметра, но я исключил это из приведенного ниже кода для простоты):

With CurrentDb.QueryDefs("qPass")
  .SQL = "exec [HS].[spGetXMLExtract]"
  .Execute
End With

Ошибка, возвращаемая MS Access

Неверный оператор SQL: ожидается «DELETE», «INSERT», «PROCEDURE», «SELECT» или «UPDATE».

Не знаю, происходит ли это, потому что: 1. У меня есть эти приложения на ВМ; и / или 2. Мне нужно как-то связать хранимую процедуру с MS Access так же, как я делал для таблиц (возможно, этого нельзя сделать).

Я предполагаю, что есть запутанные методы, которые я «мог бы» принять, но я не хочу. Пример:

1. Создать таблицу в SQL со столбцами, в которых хранятся параметры; НаписатьAFTER UPDATE Триггер на той таблице, которая выполняет мою хранимую процедуру; Запустите запрос «Обновление» из MS Access, который обновит параметры в этой таблице, и триггер SQL будет запущен. ИЛИ ЖЕ;

2. Полностью исключите хранимую процедуру из уравнения и выполните ее отдельные операторы (выберите / обновите / вставьте и т. Д.) Через подпрограмму в MS Access. Не знаю, может ли это вызвать проблемы с созданием временных таблиц.

Может кто-нибудь посоветовать, пожалуйста, это настоящий блокиратор!

Заранее спасибо!

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

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