本文实例讲述了asp.net中调用存储过程的方法。分享给大家供大家参考,具体如下:
一、建立并调用一个不带参数的存储过程如下:
1
2
3
4
|
CREATE PROCEDURE 全部学生<dbo.selectUsers>
AS SELECT * FROM 学生
GO
EXEC 全部学生
|
建立并调用一个带参数的存储过程如下:
1
2
3
4
5
|
CREATE PROCEDURE 学生查询1
@SNAME VARCHAR (8),@SDEPT VARCHAR (20)
AS SELECT * FROM 学生 WHERE 姓名=@SNAME AND 所在系=@SDEPT
GO
EXEC 学生查询1 '张三' , '计算机系'
|
或:
1
|
EXEC 学生查询1 @SNAME= '张三' ,@SDEPT= '计算机系'
|
(2)删除存储过程:
1
|
DROP PROCEDURE <存储过程名组>
|
二、在asp.net中调用存取过程:
DBHelper.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
//不带参数
public static DataTable GetList( string sqlDBO)
{
DataSet ds = new DataSet();
SqlCommand cmd = new SqlCommand(sqlDBO, Connection);
cmd.CommandType = CommandType.StoredProcedure; //指定命令类型为存储过程
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(ds);
return ds.Tables[0];
}
//带参数
public static DataTable GetList( string sqlDBO, params SqlParameter[] values)
{
DataSet ds = new DataSet();
SqlCommand cmd = new SqlCommand(sqlDBO, Connection);
cmd.CommandType = CommandType.StoredProcedure; //指定命令类型为存储过程
cmd.Parameters.AddRange(values);
//cmd.Parameters.AddWithValue("@参数1", 值1);
//cmd.Parameters.AddWithValue("@参数2", 值2);
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(ds);
return ds.Tables[0];
}
|
UsersService.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
//不带参数
public static IList<Users> GetUserList()
{
List<Users> list = new List<Users>();
DataTable table = DBHelper.GetList( "存储过程名称" );
foreach (DataRow row in table.Rows)
{
Users users = new Users();
users.Id=( int )row[ "id" ];
users.UserName=( string )row[ "userName" ];
users.Password=( string )row[ "password" ];
list.Add(users);
}
return list;
}
//带参数
public static IList<Users> GetUserList( string userName, string password)
{
List<Users> list = new List<Users>();
SqlParameter[] para= new SqlParameter[]
{
new SqlParameter( "@userName" ,userName),
new SqlParameter( "@password" ,password)
};
DataTable table = DBHelper.GetList( "存储过程名称" ,para);
foreach (DataRow row in table.Rows)
{
Users users = new Users();
users.Id=( int )row[ "id" ];
users.UserName=( string )row[ "userName" ];
users.Password=( string )row[ "password" ];
list.Add(users);
}
return list;
}
|
希望本文所述对大家asp.net程序设计有所帮助。