Я создал несколько таблиц и хранимых процедур. Существует логин, назначенный роли, которая имеет разрешение на выполнение. Для всех, кроме 2 хранимых процедур, все работает нормально. Но, 2 из них я получаю следующее сообщение об ошибке:SQL Server 2008 Не удается найти объект
Msg 15151, Level 16, State 1, Procedure XX, Line 15
Cannot find the object 'XX', because it does not exist or you do not have permission.
Я проверил порядок существует и что роль имеет разрешение на выполнение этого. Если я войду в базу данных с логином, я могу увидеть процедуру и выполнить ее, но я получу результаты на вкладке результатов окна запроса и ошибку выше на вкладке «Сообщения» окна запроса.
Я смотрел на это уже пару дней и никуда не денусь. Любая помощь будет принята с благодарностью.
Является ли схема той же, что и рабочая? –
Извините ... уточнить. Когда вы входите в систему с одним из «проблемных логинов», вы можете выполнить SP, и вы вернете некоторые результаты, но вы также получите ошибку? Если это так, то мой следующий вопрос заключается в том, что ваш основной SP вызывает любые другие пользовательские функции SP/внутри? И если да, убедитесь, что ваши пользователи/роли имеют доступ к этой функции SP /. – Zippit
Использует ли какая-либо из «проблемных» процедур динамический SQL ('exec ('')' или 'sp_executesql')?Если это так, разрешения должны быть предоставлены роли на целевом объекте (объектах). –