日期:2014-05-17  浏览次数:21615 次

找不到存储过程
asp.net中执行一个存储过程,该存储过程在sql2005的management studio中执行没问题,我在aspx中换成同一数据库下的其它存储过程执行也没问题。但就某个存储过程不能执行,提示如下:

找不到存储过程 'getProjectByInitletter'。 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 
异常详细信息: System.Data.SqlClient.SqlException: 找不到存储过程 'getProjectByInitletter'。

咋回事?


------解决方案--------------------
检查你的存储过程名称..
------解决方案--------------------
设断点挂起执行,看下是不是调用DB的时候设置有误
------解决方案--------------------
你是不是把这个 存储过程 无意间 创建到别的库里了。
------解决方案--------------------
你的数据库连接字符串是怎么写的?是不是用SA登陆的?
如果是,那么SA默认的数据库是master,你没有指定use哪个库,自然就变成了在master数据库下找这个存储过程,当然找不到;
结果方法:
1.修改sa账号默认登陆数据库;
2.在程序中修改语句,在sql语句中加入use 数据库
------解决方案--------------------
检查是否连接了正确的数据库
------解决方案--------------------
1.连接的数据库是否是你执行这个存储过程的数据库
2.架构名有没有写错
3.程序中能不能走到这一步
4.换个存储过程名,再试试
------解决方案--------------------
数据库连接字符串中的账户,默认连接到哪个库?