存儲過程的輸出參數(shù),返回值與結(jié)果集
發(fā)布日期:2022-01-28 18:16 | 文章來源:源碼之家
首先:在sql server management studio中查看輸出參數(shù),返回值以及結(jié)果集。本示例以Northwind數(shù)據(jù)庫為例。
create proc Employee
@Rowcount int=0 output
as
begin
SELECT * FROM [Northwind].[dbo].[Employees]
set @Rowcount=@@ROWCOUNT
end
運行以上存儲過程的代碼如下:
運行代碼
USE [Northwind]
GO
DECLARE @return_value int,
@MyOutput int
EXEC @return_value = [dbo].[Employee]
@Rowcount = @MyOutput OUTPUT
SELECT @MyOutput as N'輸出參數(shù)的值'
SELECT 'Return返回的值' = @return_value
GO
輸出的結(jié)果如下:
可以看出是通過EXEC @return_value = [dbo].[Employee] @Rowcount = @MyOutput OUTPUT中的return_value變量來獲得返回值,而用MyOutput變量來獲得了輸出變量值,此處的MyOutput變量相當于引用傳遞!
接下來將討論ASP.NET調(diào)用存儲過程中如何獲得輸出參數(shù),返回值以及結(jié)果集。
protected void Page_Load(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection("server=.;database=Northwind;uid=sa;pwd=1;");
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText="Employee";
cmd.CommandType = CommandType.StoredProcedure;
SqlParameter para = new SqlParameter("@Rowcou
cmd.Parameters.Add(para);
cmd.Parameters.Add("@return_value", SqlDbType.Int, 4);
cmd.Parameters["@return_value"].Direction = ParameterDirection.ReturnValue;
con.Open();
cmd.ExecuteNonQuery();
Response.Write(cmd.Parameters["@Rowcou
}
此處定義了Rowcount輸出變量,以及return_value返回值變量。輸出Roucount輸出變量的值為9,而return_value的值為0。
復(fù)制代碼 代碼如下:
create proc Employee
@Rowcount int=0 output
as
begin
SELECT * FROM [Northwind].[dbo].[Employees]
set @Rowcount=@@ROWCOUNT
end
運行以上存儲過程的代碼如下:
運行代碼
復(fù)制代碼 代碼如下:
USE [Northwind]
GO
DECLARE @return_value int,
@MyOutput int
EXEC @return_value = [dbo].[Employee]
@Rowcount = @MyOutput OUTPUT
SELECT @MyOutput as N'輸出參數(shù)的值'
SELECT 'Return返回的值' = @return_value
GO
輸出的結(jié)果如下:

可以看出是通過EXEC @return_value = [dbo].[Employee] @Rowcount = @MyOutput OUTPUT中的return_value變量來獲得返回值,而用MyOutput變量來獲得了輸出變量值,此處的MyOutput變量相當于引用傳遞!
接下來將討論ASP.NET調(diào)用存儲過程中如何獲得輸出參數(shù),返回值以及結(jié)果集。
復(fù)制代碼 代碼如下:
protected void Page_Load(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection("server=.;database=Northwind;uid=sa;pwd=1;");
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText="Employee";
cmd.CommandType = CommandType.StoredProcedure;
SqlParameter para = new SqlParameter("@Rowcou
cmd.Parameters.Add(para);
cmd.Parameters.Add("@return_value", SqlDbType.Int, 4);
cmd.Parameters["@return_value"].Direction = ParameterDirection.ReturnValue;
con.Open();
cmd.ExecuteNonQuery();
Response.Write(cmd.Parameters["@Rowcou
}
此處定義了Rowcount輸出變量,以及return_value返回值變量。輸出Roucount輸出變量的值為9,而return_value的值為0。
版權(quán)聲明:本站文章來源標注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。
相關(guān)文章