简单的web三层架构系统【第一版】

 

SQLhelper助手类编写:

 1 using System;

 2 using System.Collections.Generic;

 3 using System.Linq;

 4 using System.Text;

 5 using System.Threading.Tasks;

 6 

 7 using System.Data;

 8 using System.Data.SqlClient;

 9 using System.Configuration;

10 

11 namespace DAL

12 {

13     public class SQLHelper

14     {

15         SqlCommand cmd = null;

16 

17         public string strcon()

18         {

19             string strcon = ConfigurationManager.ConnectionStrings["strcon"].ConnectionString;

20 

21             return strcon;

22         }

23 

24         public SqlConnection getcon()

25         {

26             SqlConnection con = new SqlConnection(strcon());

27 

28             if (con.State == ConnectionState.Closed)

29             {

30                 con.Open();

31             }

32 

33             return con;

34         }

35 

36         /// <summary>

37         /// 执行增删改查的SQL语句

38         /// </summary>

39         /// <param name="sql">要执行的SQL</param>

40         /// <returns>返回执行SQL语句后影响的行数</returns>

41         public int ExecuteNonQuery(string sql)

42         {

43             int res;

44 

45             try

46             {

47                 cmd = new SqlCommand(sql, getcon());

48 

49                 res = cmd.ExecuteNonQuery();

50             }

51             catch (Exception ex)

52             {

53                 throw ex;

54             }

55             finally

56             {

57                 if (getcon().State == ConnectionState.Open)

58                 {

59                     getcon().Close();

60                 }

61             }

62 

63             return res;

64         }

65 

66         /// <summary>

67         /// 执行传入的SQL查询语句

68         /// </summary>

69         /// <param name="sql">要执行的查询SQL</param>

70         /// <returns>返回查询SQL语句的数据集</returns>

71         public DataTable ExecuteQuery(string sql)

72         {

73             DataTable dt = new DataTable();

74 

75             SqlConnection con = new SqlConnection(strcon());

76 

77             //创建一个SqlCommand对象cmd,让其连接数据库,并指向sql语句。

78             cmd = new SqlCommand(sql, getcon());

79 

80             //执行cmd连接的数据库.使用using后在执行完毕后,直接关闭sdr。不需要写sdr.closed.

81             using (SqlDataReader sdr = cmd.ExecuteReader())

82             {

83                 dt.Load(sdr);// Load 适合于SqlDataReader。如果是SqlDataAdapter,则要用到 Fill 方法。

84             }

85 

86             getcon().Close();

87 

88             return dt;

89         }

90     }

91 }

 

personDAO员工操作类编写:

  1 using System;

  2 using System.Collections.Generic;

  3 using System.Linq;

  4 using System.Text;

  5 using System.Threading.Tasks;

  6 

  7 using System.Data;

  8 using System.Data.SqlClient;

  9 

 10 namespace DAL

 11 {

 12     public class personDAO

 13     {

 14         SQLHelper sq = null;

 15 

 16         public personDAO()

 17         {

 18             sq = new SQLHelper();

 19         }

 20 

 21         /// <summary>

 22         /// 增加员工信息

 23         /// </summary>

 24         /// <param name="name">要添加的员工姓名</param>

 25         /// <param name="sex">要添加的员工性别</param>

 26         /// <param name="salary">要添加的员工工资</param>

 27         /// <returns>返回真假值:如果是真显示添加成功,如果是假显示添加失败</returns>

 28         public bool insert(string name, string sex, string salary)

 29         {

 30             bool flag = false;

 31 

 32             string sql = "insert into person ([name], sex, salary) values ('"+name+"', '"+sex+"', '"+salary+"')";

 33 

 34             if (sq.ExecuteNonQuery(sql) > 0)

 35             {

 36                 flag = true;

 37             }

 38 

 39             return flag;

 40         }

 41 

 42         /// <summary>

 43         /// 删除员工信息

 44         /// </summary>

 45         /// <param name="id">要删除员工的id</param>

 46         /// <returns>返回真假值:如果是真显示删除成功,如果是假显示删除失败</returns>

 47         public bool delete(string id)

 48         {

 49             bool flag = false;

 50 

 51             string sql = "delete from person where id = '" +id+ "'";

 52 

 53             if (sq.ExecuteNonQuery(sql) > 0)

 54             {

 55                 flag = true;

 56             }

 57 

 58             return flag;

 59         }

 60 

 61         /// <summary>

 62         /// 更改员工信息

 63         /// </summary>

 64         /// <param name="id">要更改的员工编号</param>

 65         /// <param name="name">要更改的员工姓名</param>

 66         /// <param name="sex">要更改的员工性别</param>

 67         /// <param name="salary">要更改的员工工资</param>

 68         /// <returns>返回真假值:如果是真显示更改成功,如果是假显示更改失败</returns>

 69         public bool update(string id, string name, string sex, string salary)

 70         {

 71             bool flag = false;

 72 

 73             string sql ="update person set [name] = '"+name+"', sex = '"+sex+"', salary = '"+salary+"' where id = '"+id+"'";

 74 

 75             if (sq.ExecuteNonQuery(sql) > 0)

 76             {

 77                 flag = true;

 78             }

 79 

 80             return flag;

 81         }

 82 

 83         /// <summary>

 84         /// 判断员工姓名是否重复

 85         /// </summary>

 86         /// <param name="name">要进行判断的员工姓名</param>

 87         /// <returns>返回真假值:如果是真代表重复,如果是假进行添加</returns>

 88         public bool repeat(string name)

 89         {

 90             bool flag = false;

 91 

 92             string sql = "select * from person where [name] = '" +name+ "'";

 93 

 94             #region 这样写的话,还要重新建立一张虚拟表,如果直接用下面的方法,进行行数的判断就不需要建立。

 95             //DataTable dt = sq.ExecuteQuery(sql);

 96 

 97             //if (dt.Rows.Count > 0)//dt.Rows.Count 这个方法是检查返回的虚拟表中是不是有数据,如果有的话则行数不为零。如果没有的话则行数为零。

 98             //{

 99             //    flag = true;

100             //}

101             #endregion

102 

103             if (sq.ExecuteQuery(sql).Rows.Count > 0)//dt.Rows.Count 这个方法是检查返回的虚拟表中是不是有数据,如果有的话则行数不为零。如果没有的话则行数为零。

104             {

105                 flag = true;

106             }

107 

108             return flag;

109         }

110     }

111 }

 

你可能感兴趣的:(Web)