调用SQL Server存储过程的问题

时间:2013-04-13 19:20:48

标签: c# sql sql-server stored-procedures compiler-errors

我已经创建了一个存储过程,我从Visual Studio中调用它,但是当我调用存储过程时,程序会出现编译错误。存储过程确实存在于SQL Server中。

这是错误:

  语法的

no overload“sumtotal”采用0参数

SQL Server中的存储过程:

CREATE PROCEDURE sumtotal(@totaling int output)
AS
BEGIN
declare @sum int
set @sum=(select SUM(amount_income) from IncomeTable)
insert into Total_Table(Total_Income)
values(@sum)
    set @totaling=@sum
    return @totaling
END
GO
VS中的

AccountDBClassDataContext context = new AccountDBClassDataContext();
int total;

private void button3_Click(object sender, EventArgs e)
{
   dataIncome = context.sumtotal();
}

我知道也许我的问题是愚蠢的问题,但这是一个问题。

请帮帮我。

干杯。

1 个答案:

答案 0 :(得分:3)

存储过程中指定了一个output参数,因此您在调用它时必须传递它:

private void button3_Click(object sender, EventArgs e)
{
   int? dataIncome = null;
   context.sumtotal(ref dataIncome);
}