当前位置:Gxlcms > asp.net > asp.net中调用存储过程的方法

asp.net中调用存储过程的方法

时间:2021-07-01 10:21:17 帮助过:17人阅读

本文实例讲述了asp.net中调用存储过程的方法。分享给大家供大家参考,具体如下:

一、建立并调用一个不带参数的存储过程如下:

  1. CREATE PROCEDURE 全部学生<dbo.selectUsers>
  2. AS SELECT * FROM 学生
  3. GO
  4. EXEC 全部学生

建立并调用一个带参数的存储过程如下:

  1. CREATE PROCEDURE 学生查询1
  2. @SNAME VARCHAR(8),@SDEPT VARCHAR(20)
  3. AS SELECT * FROM 学生 WHERE 姓名=@SNAME AND 所在系=@SDEPT
  4. GO
  5. EXEC 学生查询1 '张三','计算机系'

或:

  1. EXEC 学生查询1 @SNAME='张三',@SDEPT='计算机系'

(2)删除存储过程:

  1. DROP PROCEDURE<存储过程名组>

二、在asp.net中调用存取过程:

DBHelper.cs

  1. //不带参数
  2. public static DataTable GetList(string sqlDBO)
  3. {
  4. DataSet ds = new DataSet();
  5. SqlCommand cmd = new SqlCommand(sqlDBO, Connection);
  6. cmd.CommandType = CommandType.StoredProcedure; //指定命令类型为存储过程
  7. SqlDataAdapter da = new SqlDataAdapter(cmd);
  8. da.Fill(ds);
  9. return ds.Tables[0];
  10. }
  11. //带参数
  12. public static DataTable GetList(string sqlDBO,params SqlParameter[] values)
  13. {
  14. DataSet ds = new DataSet();
  15. SqlCommand cmd = new SqlCommand(sqlDBO, Connection);
  16. cmd.CommandType = CommandType.StoredProcedure; //指定命令类型为存储过程
  17. cmd.Parameters.AddRange(values);
  18. //cmd.Parameters.AddWithValue("@参数1", 值1);
  19. //cmd.Parameters.AddWithValue("@参数2", 值2);
  20. SqlDataAdapter da = new SqlDataAdapter(cmd);
  21. da.Fill(ds);
  22. return ds.Tables[0];
  23. }

UsersService.cs

  1. //不带参数
  2. public static IList<Users> GetUserList()
  3. {
  4. List<Users> list = new List<Users>();
  5. DataTable table = DBHelper.GetList("存储过程名称");
  6. foreach (DataRow row in table.Rows)
  7. {
  8. Users users = new Users();
  9. users.Id=(int)row["id"];
  10. users.UserName=(string)row["userName"];
  11. users.Password=(string)row["password"];
  12. list.Add(users);
  13. }
  14. return list;
  15. }
  16. //带参数
  17. public static IList<Users> GetUserList(string userName,string password)
  18. {
  19. List<Users> list = new List<Users>();
  20. SqlParameter[] para=new SqlParameter[]
  21. {
  22. new SqlParameter("@userName",userName),
  23. new SqlParameter("@password",password)
  24. };
  25. DataTable table = DBHelper.GetList("存储过程名称",para);
  26. foreach (DataRow row in table.Rows)
  27. {
  28. Users users = new Users();
  29. users.Id=(int)row["id"];
  30. users.UserName=(string)row["userName"];
  31. users.Password=(string)row["password"];
  32. list.Add(users);
  33. }
  34. return list;
  35. }

更多关于asp.net相关内容感兴趣的读者可查看本站专题:《asp.net字符串操作技巧汇总》、《asp.net操作XML技巧总结》、《asp.net文件操作技巧汇总》、《asp.net ajax技巧总结专题》及《asp.net缓存操作技巧总结》。

希望本文所述对大家asp.net程序设计有所帮助。

人气教程排行