Мы используем SQL Server 2008 в качестве нашей РСУБД, и у нас есть база данных, в которой у нее есть другой пользователь, а не dbo.Сохраненная процедура не найдена
Проблема заключается в том, что хранимая процедура не может работать, если не указан ее владелец.
Если мы подключим к нашей базе данных с помощью этого пользователя и попробуйте выполнить следующие действия:
exec ourSP
мы получаем «не удалось найти ourSP» ошибка, но это работает отлично:
exec user.ourSP
Значит ли кто-нибудь знает, что может привести к такому странному поведению?
Вы говорите, что вы подключены к базе данных как «пользователь», и она не видит ее? Вы можете сделать простой тест через ваше соединение, чтобы позвонить SELECT USER_NAME(), чтобы убедиться, что вы подключены, как вы думаете (или проверить его в SQL Profiler). –
Оказалось, что, несмотря на регистрацию как пользователя 'SELECT USER_NAME() возвращает' dbo ', но я не знаю, как это возможно. Я выполнил sp_change_users_login для автоматического исправления ошибок входа, но ничего не изменилось. – Beatles1692