"找不到存储过程"

Chl*_*hil 16 sql-server stored-procedures

我正在维护一个拥有SQL Server 2005后端的经典ASP网站.对于一小段新功能,我编写了一个存储过程来进行插入.这是数据库中唯一的用户存储过程.

当我尝试从代码中调用存储过程时,我收到以下错误:

Microsoft OLE DB Provider for SQL Server error '80040e14' 
Could not find stored procedure 'InsertGroup'. 
/newGroup.asp, line 84 

数据库使用SQL Server身份验证.当我使用与连接字符串中相同的用户/ pw连接到Visual Studio中的数据库服务器时,存储过程不可见,但所有表都是.

用户具有datareader和datawriter角色以及对存储过程的显式执行权限.

我错过了什么?

更新:道歉,服务器管理员误以为它是2000服务器,当它实际上是2005服务器(在Windows Server 2003 x64上运行).

Chl*_*hil 58

步行耻辱:

连接字符串指向实时数据库.错误消息完全准确 - 存储过程仅存在于dev DB中.感谢所有提供优秀答案的人,以及为浪费你的时间而道歉.

  • 拥有你的耻辱+1.(去过那里,真的.) (7认同)
  • @Chloraphil:看到开发人员倾向于认为最可能的解释不值得考虑,事先探索其他一切,总是很有趣.:) +1提供问题的原因. (6认同)
  • 我正在谷歌搜索该错误的解决方案并找到了这个问题,结果我做了同样的事情,哈哈.6年后,你还在帮助别人;)谢谢! (6认同)
  • 您应该将此标记为答案,以帮助那些可能无法读到底部的人.你发布这个很好.我相信其他人已经完成并会做类似的事情,像这样的疏忽的例子可能会帮助其他人找到他的错误. (3认同)

Rob*_*Day 8

您可能需要检查存储过程的实际所有者是谁.如果它是特定的不同用户,则可能是您无法访问它的原因.