У меня SQL Server 2008 со связанным сервером Sybase, и я пытаюсь выполнить хранимую процедуру на сервере Sybase, используя OPENQUERY. Если у меня есть сохраненный процесс, который не принимает параметры, то все в порядке. Если у меня есть сохраненный процесс с параметрами, это не удается. Я даже попробовал очень простой сохраненный процесс, который только взял int, который все еще потерпел неудачу. Ниже приведен синтаксис, который я использую:
select * from
OPENQUERY([LINKSERVER],'exec database.user.my_stored_proc ''AT'',''XXXX%'',''1111'',1')
Сообщение 7357, уровень 16, состояние 2, строка 3
Не удалось обработать объект "exec database.user.my_stored_proc 'AT', 'XXXX%', '1111', 1". Поставщик OLE DB «ASEOLEDB» для связанного сервера «LINKSERVER» указывает, что либо у объекта нет столбцов, либо у текущего пользователя нет разрешений на этот объект.
Поскольку процесс будет работать без параметров, я не думаю, что это проблема с разрешениями.