asp.net 调用 存储过程(带output 参数)
2008-05-31 21:55
369 查看
存储过程:
--建数据库
createdatabasetest
--建表
ifexists(select*fromdbo.sysobjectswhereid=object_id(N'[dbo].[laolao]')andOBJECTPROPERTY(id,N'IsUserTable')=1)
droptable[dbo].[laolao]
GO
CREATETABLE[dbo].[laolao](
[MyName][int]NOTNULL,
[Mycompany][varchar](20)COLLATEChinese_PRC_CI_ASNULL
)ON[PRIMARY]
GO
--在表里面插入1000记录
--建数据库
createdatabasetest
--建表
ifexists(select*fromdbo.sysobjectswhereid=object_id(N'[dbo].[laolao]')andOBJECTPROPERTY(id,N'IsUserTable')=1)
droptable[dbo].[laolao]
GO
CREATETABLE[dbo].[laolao](
[MyName][int]NOTNULL,
[Mycompany][varchar](20)COLLATEChinese_PRC_CI_ASNULL
)ON[PRIMARY]
GO
--在表里面插入1000记录
SETQUOTED_IDENTIFIERON GO SETANSI_NULLSON GO createprocps_InsertRow as declare@iINT set@i=1000 while@i>0 begin insertintolaolaovalues(cast(@iasvarchar(10)),cast(@iasvarchar(10))+'whn') set@i=@i-1 end GO SETQUOTED_IDENTIFIEROFF GO SETANSI_NULLSON GO
--一个带output参数的存储过程
SETQUOTED_IDENTIFIERON GO SETANSI_NULLSON GO ALTERprocDepartPage @PageIndexint, @PageSizeint, @SumCountintoutput as begin declare@RecordCountint set@RecordCount=@PageIndex*@PageSize set@SumCount=(selectCount(*)fromlaolao) SETROWCOUNT@RecordCount select*into#TempTablefromlaolaoorderbyMyNameasc SETROWCOUNT@PageSize select*from#TempTableorderbyMyNamedesc SETROWCOUNT0 droptable#TempTable end GO SETQUOTED_IDENTIFIEROFF GO SETANSI_NULLSON GO
c#代码(在App_Code中添加)
usingSystem;
usingSystem.Data;
usingSystem.Configuration;
usingSystem.Web;
usingSystem.Web.Security;
usingSystem.Web.UI;
usingSystem.Web.UI.WebControls;
usingSystem.Web.UI.WebControls.WebParts;
usingSystem.Web.UI.HtmlControls;
usingSystem.Data.SqlClient;
///
///Class1的摘要说明
///
publicclassdb
{
publicdb()
{
//
//TODO:在此处添加构造函数逻辑
//
}
publicstaticDataTableGetList(intPageIndex,intPageSize,outintSumCount)
{
SumCount=0;
//stringsqlstr=ConfigurationManager.ConnectionStrings["sqlstr"].ConnectionString;
SqlConnectioncon=newSqlConnection("server=.;database=test;uid=sa;pwd=sa");
SqlCommandcmd=newSqlCommand();
cmd.Connection=con;
cmd.CommandType=CommandType.StoredProcedure;
cmd.CommandText="DepartPage";
SqlParameter[]par={newSqlParameter("@PageIndex",DbType.Int32),newSqlParameter("@PageSize",DbType.Int32),newSqlParameter("@SumCount",DbType.Int32)};
par[0].Value=PageIndex;
par[1].Value=PageSize;
par[2].Value=SumCount;
par[2].Direction=ParameterDirection.Output;
for(inti=0;i<par.Length;i++)
{
cmd.Parameters.Add(par[i]);
}
SqlDataAdapterdataAdapter=newSqlDataAdapter(cmd);
DataTableds=newDataTable();
dataAdapter.Fill(ds);
SumCount=Convert.ToInt32(cmd.Parameters["@SumCount"].Value);
returnds;
}
}
//页面调用
intSumCount=0;
db.GetList(1,10,outSumCount);
相关文章推荐
- asp.net 调用存储过程返回参数和output参数
- ASP.net:调用存储过程 -- 代码取不到输出(Output)参数值 - 因ExecuteReader不当使用
- [Database]创建存储过程并在ASP.NET中的调用带参数的存储过程与及调用带参数的SQL语句对比
- ASP.Net 调用存储过程,同时返回记录集和输出参数
- asp.net 调用存储过程(带有输入,输出参数 范例)二
- asp.net 获得存储过程 返回值,影响行数,输出参数 output 用法
- ASP.NET中调用存储过程带(输入/输出)参数和返回值的一些常用的例子
- asp.net 调用存储过程(带有输入,输出参数 ,思路)二
- ASP.NET中调用存储过程带(输入输出)参数和返回值例子
- ASP.NET调用存储过程返回输出参数,获得返回值
- ASP.NET中调用存储过程带(输入/输出)参数和返回值
- Asp.Net中调用存储过程并返回输出参数
- 【ASP.NET开发】ADO.NET调用带输出参数的存储过程
- [网络收集]ASP.NET中调用存储过程带(输入/输出)参数和返回值的一些常用的例子
- 【ASP.NET开发】ADO.NET调用带输出参数的存储过程
- ASP.NET中调用存储过程带(输入/输出)参数和返回值
- ASP.NET调用存储过程(带参数,三个返回值)+@ReturnValue
- ASP.NET中调用存储过程带(输入/输出)参数和返回值的一些常用的例子
- ASP.NET调用存储过程返回值 输入输出参数
- ASP.NET调用存储过程并接收存储过程返回值