SQL 2008 R2:找不到存储过程

时间:2011-07-06 20:47:09

标签: sql sql-server sql-server-2008 procedure

我正在学习SQL程序 我创建了程序,然后执行。我很好......而且。它显示了

  

执行“exec my_procedure”时找不到存储过程

我不确定我收到此错误的原因。我选择了错误的目录来存储程序吗?

4 个答案:

答案 0 :(得分:4)

您可能不在查询窗口中的正确数据库中。应该有一个显示当前数据库(可能是主数据库)的下拉列表。选择您在其中创建存储过程的数据库,然后重试。

答案 1 :(得分:3)

试试这个:

USE my_database;
EXEC my_procedure;

答案 2 :(得分:3)

很难说这可能有几个原因。

  1. 当您认为自己

  2. 时,您实际上并未执行create proc
  3. 您不小心执行了drop proc

  4. 拨打exec my_procedure

  5. 时,您未连接到正确的数据库
  6. 您正在使用其他登录,但无权访问该程序

  7. 它采用与默认架构不同的架构

  8. 您可以运行此命令以查看您是否在给定数据库中存在proc(或删除所有地方的所有内容)

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

    即保存程序创建脚本对您执行它的能力没有影响

答案 3 :(得分:0)

试试这个

exec my_database.my_schema.my_procedure

如果仍然失败,你能为我们提供sp create script吗?