SQL 2008 R2: не удалось найти хранимую процедуру - PullRequest
2 голосов
/ 07 июля 2011

Я изучаю процедуру SQL.
Я создал процедуру и выполняю. Я был в порядке ... и. отображается

Не удалось найти хранимую процедуру при выполнении "exec my_procedure"

Я не совсем уверен, почему я получаю эту ошибку. Я выбрал неправильный каталог для хранения процедуры?

Ответы [ 4 ]

4 голосов
/ 07 июля 2011

Возможно, вы не в нужной базе данных в окне запроса. Должен быть раскрывающийся список, показывающий текущую базу данных (возможно, основную). Выберите базу данных, в которой вы создали хранимую процедуру, и повторите попытку.

3 голосов
/ 07 июля 2011

Трудно сказать, что это могло произойти по нескольким причинам.

  1. вы на самом деле не выполняли create proc, когда думали, что вы

  2. вы случайно казнили drop proc

  3. Вы не подключены к нужной БД, когда звоните exec my_procedure

  4. Вы используете другой логин и у него нет доступа к процедуре

  5. Его схема отличается от схемы по умолчанию

Вы могли бы запустить это, чтобы увидеть, есть ли у вас proc в какой-либо конкретной БД (или отбросить, где их можно увидеть)

   select * 
   from INFORMATION_SCHEMA.ROUTINES 
   where ROUTINE_NAME = 'my_procedure'

При этом сохранение сценария создания процедуры не влияет на вашу способность его выполнять

3 голосов
/ 07 июля 2011

Попробуйте это:

USE my_database;
EXEC my_procedure;
0 голосов
/ 06 мая 2015

попробуйте

exec my_database.my_schema.my_procedure

если все еще не получается, можете ли вы предоставить нам сценарий sp create?

...