asp.net中调用存储过程的方法
本文实例讲述了asp.net中调用存储过程的方法。分享给大家供大家参考,具体如下:
一、建立并调用一个不带参数的存储过程如下:
CREATEPROCEDURE全部学生<dbo.selectUsers> ASSELECT*FROM学生 GO EXEC全部学生
建立并调用一个带参数的存储过程如下:
CREATEPROCEDURE学生查询1 @SNAMEVARCHAR(8),@SDEPTVARCHAR(20) ASSELECT*FROM学生WHERE姓名=@SNAMEAND所在系=@SDEPT GO EXEC学生查询1'张三','计算机系'
或:
EXEC学生查询1@SNAME='张三',@SDEPT='计算机系'
(2)删除存储过程:
DROPPROCEDURE<存储过程名组>
二、在asp.net中调用存取过程:
DBHelper.cs
//不带参数
publicstaticDataTableGetList(stringsqlDBO)
{
DataSetds=newDataSet();
SqlCommandcmd=newSqlCommand(sqlDBO,Connection);
cmd.CommandType=CommandType.StoredProcedure;//指定命令类型为存储过程
SqlDataAdapterda=newSqlDataAdapter(cmd);
da.Fill(ds);
returnds.Tables[0];
}
//带参数
publicstaticDataTableGetList(stringsqlDBO,paramsSqlParameter[]values)
{
DataSetds=newDataSet();
SqlCommandcmd=newSqlCommand(sqlDBO,Connection);
cmd.CommandType=CommandType.StoredProcedure;//指定命令类型为存储过程
cmd.Parameters.AddRange(values);
//cmd.Parameters.AddWithValue("@参数1",值1);
//cmd.Parameters.AddWithValue("@参数2",值2);
SqlDataAdapterda=newSqlDataAdapter(cmd);
da.Fill(ds);
returnds.Tables[0];
}
UsersService.cs
//不带参数
publicstaticIList<Users>GetUserList()
{
List<Users>list=newList<Users>();
DataTabletable=DBHelper.GetList("存储过程名称");
foreach(DataRowrowintable.Rows)
{
Usersusers=newUsers();
users.Id=(int)row["id"];
users.UserName=(string)row["userName"];
users.Password=(string)row["password"];
list.Add(users);
}
returnlist;
}
//带参数
publicstaticIList<Users>GetUserList(stringuserName,stringpassword)
{
List<Users>list=newList<Users>();
SqlParameter[]para=newSqlParameter[]
{
newSqlParameter("@userName",userName),
newSqlParameter("@password",password)
};
DataTabletable=DBHelper.GetList("存储过程名称",para);
foreach(DataRowrowintable.Rows)
{
Usersusers=newUsers();
users.Id=(int)row["id"];
users.UserName=(string)row["userName"];
users.Password=(string)row["password"];
list.Add(users);
}
returnlist;
}
更多关于asp.net相关内容感兴趣的读者可查看本站专题:《asp.net字符串操作技巧汇总》、《asp.net操作XML技巧总结》、《asp.net文件操作技巧汇总》、《asp.netajax技巧总结专题》及《asp.net缓存操作技巧总结》。
希望本文所述对大家asp.net程序设计有所帮助。