为过程或函数 Sp_ForumSelect 指定的参数太多 怎么回事??

gccr 人人贷 服务器端工程师  2004-04-22 04:30:00
Sp_ForumSelect是一个存储过程,
然后我在程序里这么打:
<asp:DataGrid DataSource='<%#dbo.ForumSelect(Convert.ToInt32(DataBinder.Eval(Container.DataItem,"Id")))%>'
AutoGenerateColumns="true" AllowPaging="False" Runat="server" Width="459px">
</asp:DataGrid>

dbo.ForumSelect(int Id)是一个函数,用来根据传入的Id值,调用存储过程。查询一个结果。返回一个dataset.
可是运行时提示:
为过程或函数 Sp_ForumSelect 指定的参数太多
求高手指教 。多谢。
...全文
128 16 打赏 收藏 举报
写回复
16 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
gccr 2004-04-25
这个问题我先是改变权限,再把所有的存储过程名由SP打头换了,最后,就没有问题了。
  • 打赏
  • 举报
回复
shoutor 2004-04-23
看不错什么错误
  • 打赏
  • 举报
回复
gccr 2004-04-23
顶一下。
  • 打赏
  • 举报
回复
gccr 2004-04-23
找不到存储过程Sp_CategoryAll是怎么回事??
分不够再加。
  • 打赏
  • 举报
回复
gccr 2004-04-23
我在VS2003中右击存储过程,运行,可以通过。
  • 打赏
  • 举报
回复
gccr 2004-04-23
就是我在数据库里面已经建 了这个Sp_CategoryAll这个存储过程。并且用查询 分析器调试通过。可是在程序里就出这个错误提示。怎么回事?
  • 打赏
  • 举报
回复
erist 2004-04-22
另,不要使用sp_为前缀,一则没什么用,二则有不少人说过了,与系统冲突。
  • 打赏
  • 举报
回复
erist 2004-04-22
ALTER PROCEDURE Sp_ForumSelect
(
@categoryId int
)
AS

select * from wand.TabForums
where categoryId=@categoryId order by forumPosition

RETURN

在查询要析器中,提调通不?
  • 打赏
  • 举报
回复
athossmth 2004-04-22
1.alter 的stored procedure本身存在么?
2.你有权限alter么?看看alter之后stored procedure的内容
3.建议不要用return
  • 打赏
  • 举报
回复
huangsuipeng 2004-04-22
SORRY,看错了
  • 打赏
  • 举报
回复
huangsuipeng 2004-04-22
categoryId是自增的嘛?
  • 打赏
  • 举报
回复
hnahzx 2004-04-22
我刚碰到这样一个问题,我的存储过程的参数与调用它的方法的参数个数不一致。
就出现你的那个错误了
  • 打赏
  • 举报
回复
gccr 2004-04-22
再顶一下。马上给分呀。急呢。多谢个位高手啦。
  • 打赏
  • 举报
回复
gccr 2004-04-22
自己顶一下。
  • 打赏
  • 举报
回复
gccr 2004-04-22
ALTER PROCEDURE Sp_ForumSelect
(
@categoryId int
)
AS

select * from wand.TabForums
where categoryId=@categoryId order by forumPosition

RETURN


public DataSet ForumSelect( int Id )
{
myCmd.Connection = DBConn;
myCmd.CommandType = CommandType.StoredProcedure;
myCmd.CommandText = "Sp_ForumSelect";
myCmd.Parameters.Clear();

myCmd.Parameters.Add("@categoryId",SqlDbType.Int, 4);
myCmd.Parameters["@categoryId"].Value = Id;

DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand= myCmd;
da.Fill( ds, "table1" );

return ds;
}
  • 打赏
  • 举报
回复
acewang 2004-04-22
贴一下调用存储过程的代码
  • 打赏
  • 举报
回复
相关推荐
发帖
.NET社区
加入

6.0w+

社区成员

.NET技术交流专区
帖子事件
创建了帖子
2004-04-22 04:30
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。