在查询分析器里面用exec来测试过这个存储过程是没有问题的,但在程序里面一调用就提示“未能找到存储过程”,烦
这是程序代码
sqlLink.myCmd.Connection = sqlLink.myConn;
sqlLink.myCmd.CommandType = CommandType.StoredProcedure;
sqlLink.myCmd.CommandText = "sNumLoad"; SqlParameter temParm = sqlLink.myCmd.Parameters.Add("@sDep",SqlDbType.NVarChar,50);
temParm.Value = sDep.SelectedValue;
temParm = sqlLink.myCmd.Parameters.Add("@sGrade",SqlDbType.NVarChar,50);
temParm.Value = sGrade.SelectedValue;
//temParm = sqlLink.myCmd.Parameters.Add("@sNumCount",SqlDbType.Int);
//temParm.Direction = ParameterDirection.ReturnValue;
//sqlLink.myCmd.Parameters["@sNumCount"] = sDep.SelectedValue; sqlLink.odcString();
sqlLink.odcOpen();
SqlDataReader sNumReader = sqlLink.myCmd.ExecuteReader();

解决方案 »

  1.   

    检查存储过程名字是否写错,检查你程序连接的库和查询分析器连接的库是否是同一个库,然后再检查参数是否匹配
    这些都检查过了,没有问题的 回复人: swzlxm(守望者) ( ) 信誉:100  2005-12-24 09:41:00  得分: 0  
     
     
       不是很清楚了嗎?都說找不到存儲過程了
      
     
    问题是存储过程都在那里,但是它就说找不到,我想知道为什么会找不到?问题的可能性在哪里?
      

  2.   

    完了,单独在这个页面做了个SqlConnection和SqlCommand,再把两个参数的Value直接分配了两个值给它都还是说找不到存储过程,已经是把这个存储过程做得最简单的了,没有想到还是有问题
      

  3.   

    是不是权限的问题,你的.net帐号是否有操作存储过程的权限?俺这是病急乱投医,不过楼主可以看看,汗
      

  4.   

    是不是权限的问题,你的.net帐号是否有操作存储过程的权限?操作存储过程不是使用SqlConnection的帐号的吗?在哪里把.net帐号添加进去啊?
      

  5.   

    换成这样
    sqlLink.myCmd.CommandText = "sNumLoad";
    sqlLink.myCmd.CommandType = CommandType.StoredProcedure;
      

  6.   

    操作存储过程不是使用SqlConnection的帐号的吗?在哪里把.net帐号添加进去啊?
    ==============================
    晕,如果你的SqlConnection建立连接时用的是Sql验证的话,那个userid就是所对应的帐号,看它;
    如果你用的是Windows验证,那在Win Server 2003中是Network Service,而在Winxp中是AspNet,
      

  7.   

    用的就是Uid的帐号,刚刚看了一下,是有Exec的权限的.