本文实例讲述了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程序设计有所帮助。