ASP.net+SQL server2008简单的数据库增删改查 VS2012

 

工具:VS2012

数据库:SQL server

简单说明:根据老师上课给的代码,进行了简单的改正适用于VS2012环境,包括注册、登录、查询、修改、删除功能,多数参考了网上的代码

百度云源代码连接testDAO:http://pan.baidu.com/s/1c0CTRgs

遇见的问题:

1、字符文本中字符太多: 在html中用的,在.NET中需要把双引号变成单引号,javascript中的部分双引号也需变成单引号,此处代码详见register.aspx

2、如何javascript获取表格中的行数:通过varx=document.getElementById("表格id");找到table,x.rows[].cells[]即可找到第几行第几列     此处代码详见register.aspx的javascript代码

3、如何通过asp获取url中参数的值:http://localhost:30965/testDAO/list.aspx?username=16&psaaword=21 

  String x= Request.QueryString["username"];即可获得username的值16

 

 

文件结构如右图所示ASP.net+SQL server2008简单的数据库增删改查 VS2012_第1张图片 

 

数据库名字:easylife  表的名字:table_user  表内容如图:ASP.net+SQL server2008简单的数据库增删改查 VS2012_第2张图片

 

 

界面如下图所示:ASP.net+SQL server2008简单的数据库增删改查 VS2012_第3张图片ASP.net+SQL server2008简单的数据库增删改查 VS2012_第4张图片

 

 

DBHelper.cs代码:在每一个对象的数据库访问类中:1、数据库连接反复出现  2、数据库连接打开和关闭反复出现  3、执行Sql语句的方法相似

因此,定义DBHelper类,封装常用的方法

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Web;
 5 using System.Data.SqlClient; 
 6 
 7 /// 
 8 /// DBHelper 的摘要说明
 9 /// 
10 namespace testDAO.Library
11 {
12     public class DBHelper
13     {//server=.;Trusted_Connection=SSPI;database=easylife
14         private String connectionString = "server=.;database=easylife;uid=sa;pwd=root";
15 
16         public SqlDataReader ExecuteReader(String sql)
17         {
18             SqlConnection connection = new SqlConnection(connectionString);
19             connection.Open();
20 
21             SqlCommand command = new SqlCommand(sql,connection);
22 
23             SqlDataReader result = command.ExecuteReader();
24 
25             return result;
26         }
27 
28         public bool ExecuteCommand(String sql)
29         {
30             bool result = false;
31 
32             try
33             {
34                 SqlConnection connection = new SqlConnection(connectionString);
35                 connection.Open();
36 
37                 SqlCommand command = new SqlCommand(sql,connection);
38                 //command.Connection = connection;
39                 //command.CommandText = sql;
40                 command.ExecuteNonQuery();
41  
42 
43                 connection.Close();
44 
45                 result = true;
46             }
47             catch (Exception e)
48             {
49                 throw e;
50             }
51 
52             return result;
53         }
54 
55     }
56 }

定义User类封装用户信息  User.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

/// 
/// User 的摘要说明
/// 
namespace testDAO.Library
{
    public class User
    {
        private String userName = "";
        private String userLogin = "";
        private String userPwd = "";

        public String UserName
        {
            get
            {
                return userName;
            }
            set
            {
                userName = value;
            }
        }

        public String UserLogin
        {
            get
            {
                return userLogin;
            }
            set
            {
                userLogin = value;
            }
        }

        public String UserPwd
        {
            get
            {
                return userPwd;
            }
            set
            {
                userPwd = value;
            }
        }
    }
}

 

 采用UserService实现将用户信息的数据库操作 UserService.cs

  1 using System;
  2 using System.Collections.Generic;
  3 using System.Linq;
  4 using System.Web;
  5 
  6 using System.Data.SqlClient;
  7 /// 
  8 /// UserService 的摘要说明
  9 /// 
 10 namespace testDAO.Library
 11 {
 12     public class UserService
 13     {
 14         public bool AddUser(User user)
 15         {
 16             bool result = false;
 17             String sql = "";
 18 
 19             sql = "insert into table_user (userName,userLogin,userPwd)values(";
 20             sql += "'" + user.UserName + "',";
 21             sql += "'" + user.UserLogin + "',";
 22             sql += "'" + user.UserPwd + "'";
 23             sql += ")";
 24 
 25             DBHelper helper = new DBHelper();
 26             result = helper.ExecuteCommand(sql);
 27             return result;
 28            
 29         }
 30 
 31         public User GetUserByLogin(User user)
 32         {
 33             String sql = "";
 34 
 35             sql = "select * from table_user where userLogin='" + user.UserLogin + "'";
 36 
 37             DBHelper helper = new DBHelper();
 38             SqlDataReader reader = helper.ExecuteReader(sql);
 39             User result = new User();
 40             if (reader.Read())
 41             {
 42 
 43                 result.UserName = reader.GetString(0);
 44                 result.UserLogin = reader.GetString(1);
 45                 result.UserPwd = reader.GetString(2);
 46                
 47             }
 48             else 
 49             {
 50                 return null;
 51             }
 52            
 53             return result;
 54         }
 55 
 56         public List GetAllUsers()
 57         {
 58             String sql = "";
 59 
 60             sql = "select * from table_user";
 61 
 62             DBHelper helper = new DBHelper();
 63             SqlDataReader reader = helper.ExecuteReader(sql);
 64 
 65             if (!reader.HasRows)
 66             {
 67                 return null;
 68             }
 69 
 70             List list = new List();
 71             while (reader.Read())
 72             {
 73                 User item = new User();
 74 
 75                 item.UserName = reader.GetString(0);
 76                 item.UserLogin = reader.GetString(1);
 77                 item.UserPwd = reader.GetString(2);
 78 
 79                 list.Add(item);
 80             }
 81 
 82             return list;
 83         }
 84 
 85         public bool DeleteUsers(String i) 
 86         {
 87             bool result = false;
 88             String sql = "";
 89             sql = "delete  from table_user where userLogin ='"+ i+" '" ;
 90             DBHelper helper = new DBHelper();
 91             result = helper.ExecuteCommand(sql);
 92             return result;
 93         }
 94 
 95         public bool UpdateUsers(User user)
 96         {
 97             bool result = false;
 98             String sql = "";
 99             sql = "update table_user set userName= '" + user.UserName + "',userPwd='" + user.UserPwd + " '  where userlogin='" + user.UserLogin + " '";
100           //  update  table_user set userName='1',userPwd='1' where userLogin='5'
101             DBHelper helper = new DBHelper();
102             result = helper.ExecuteCommand(sql);
103             return result;
104         }
105 
106     }
107 }

 

业务逻辑层UserManager.cs,是表示层与数据访问层的桥梁 ,用于完成逻辑判断、业务处理、数据传递等操作。

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Web;
 5 
 6 /// 
 7 /// UserManager 的摘要说明
 8 /// 
 9 namespace testDAO.Library
10 {
11     public class UserManager
12     {
13         public bool AddUser(User user)
14         {
15             UserService service = new UserService();
16             User temp = service.GetUserByLogin(user);
17 
18             if (temp != null)
19             {
20                 return false;
21             }
22 
23             bool result = service.AddUser(user);
24             return result;
25         }
26 
27         public bool Login(User user)
28         {
29             bool result = false;
30 
31             UserService service = new UserService();
32 
33             User temp = service.GetUserByLogin(user);
34             if (temp == null)
35             {
36                 result = false;
37             }
38             else if (user.UserPwd.Equals(temp.UserPwd))
39             {
40                 result = true;
41             }
42 
43             return result;
44         }
45 
46         public List GetAllUsers()
47         {
48             UserService service = new UserService();
49             return service.GetAllUsers();
50         }
51         public bool DeleteUser(User user)
52         {
53             UserService service = new UserService();
54         
55             bool result = service.DeleteUsers(user.UserLogin);
56             return result;
57             
58         }
59 
60         public bool UpdateUser(User user)
61         {
62             UserService service = new UserService();
63             bool result = service.UpdateUsers(user);
64             return result;
65         }
66     }
67 }

 

 

注册界面代码regeister.aspx

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="register.aspx.cs" Inherits="register" %>


"http://www.w3.org/1999/xhtml">
"server">
"Content-Type" content="text/html; charset=utf-8"/>
    


    
"form1" runat="server">

"Label1" runat="server" Text="姓名:"> "nameText" runat="server">

"Label2" runat="server" Text="帐号:"> "loginText" runat="server">

"Label3" runat="server" Text="密码:"> "pwdText" runat="server">

"Button1" runat="server" οnclick="Button1_Click" Text="注册" /> "Button2" runat="server" οnclick="Button2_Click" Text="转向登录" />

 

注册界面逻辑代码 regeister.aspx.cs

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Web;
 5 using System.Web.UI;
 6 using System.Web.UI.WebControls;
 7 using System.Data.SqlClient;
 8 using testDAO.Library;
 9 
10     public partial class register : System.Web.UI.Page
11     {
12         protected void Page_Load(object sender, EventArgs e)
13         {
14 
15         }
16 
17         public void CreateTable()
18         {         
19             String connectionString = "server=.;Trusted_Connection=SSPI;database=easylife";
20             SqlConnection connection = new SqlConnection(connectionString);
21             connection.Open();
22             SqlCommand command = new SqlCommand();
23             command.Connection = connection;
24             command.ExecuteNonQuery();
25             connection.Close();
26         }
27         protected void Button1_Click(object sender, EventArgs e)
28         {
29             String userName = nameText.Text;
30             String userLogin = loginText.Text;
31             String userPwd = pwdText.Text;
32 
33             User user = new User();
34             user.UserName = userName;
35             user.UserLogin = userLogin;
36             user.UserPwd = userPwd;
37 
38             bool result = false;
39             UserManager manager = new UserManager();
40             result = manager.AddUser(user);
41             Response.Write(result);
42             if (result)
43             {
44                 Response.Write("注册成功");
45             }
46             else
47             {
48                 Response.Write("注册失败");
49             }
50         }
51         protected void Button2_Click(object sender, EventArgs e)
52         {
53             Response.Redirect("login.aspx");
54         }
55     }
regeister.aspx.cs

登录界面代码 login.aspx

 1 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="login.aspx.cs" Inherits="login" %>
 2 
 3 
 4 
 5 "http://www.w3.org/1999/xhtml">
 6 "server">
 7 "Content-Type" content="text/html; charset=utf-8"/>
 8     
 9 
10 
11     
"form1" runat="server"> 12
13
14 "Label1" runat="server" Text="帐号:"> 15 "loginText" runat="server"> 16
17
18 "Label2" runat="server" Text="密码:"> 19 "pwdText" runat="server"> 20
21
22 "loginButton" runat="server" οnclick="loginButton_Click" 23 Text="登录" /> 24 "Button1" runat="server" Text="转向注册" OnClick="Button1_Click" /> 25
26
27 28
login.aspx

 

登录界面逻辑代码 login.aspx.cs

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Web;
 5 using System.Web.UI;
 6 using System.Web.UI.WebControls;
 7 using testDAO.Library;
 8 
 9 public partial class login : System.Web.UI.Page
10 {
11     protected void Page_Load(object sender, EventArgs e)
12     {
13 
14     }
15     protected void Button1_Click(object sender, EventArgs e) 
16     {
17         Response.Redirect("register.aspx");
18     }
19 
20     protected void loginButton_Click(object sender, EventArgs e)
21     {
22         User user = new User();    
23 
24         user.UserLogin = loginText.Text;
25         user.UserPwd = pwdText.Text;
26 
27         UserManager manager = new UserManager();
28         bool result = manager.Login(user);
29         if (result)
30         {
31             Response.Redirect("list.aspx");
32         }
33         else 
34         {
35             Response.Write("登录失败,请输入正确的用户名和密码");
36         }
37 
38 
39     }
40 }
login.aspx.cs

 

显示界面代码:

显示界面相关说明:

显示界面图片是这样:

当点击修改时图片如下:

点击修改时通过table获得table中的行数,从而改变行数中相应的内容,相关代码在javascript中

参数传值通过URL获取

 1 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="list.aspx.cs" Inherits="list" %>
 2 
 3 <%@ Import Namespace="testDAO.Library" %>
 4 
 5 
 6 "http://www.w3.org/1999/xhtml">
 7 "server">
 8 "Content-Type" content="text/html; charset=utf-8"/>
 9     
10 
11 
12     
"form1" runat="server"> 13
14 "test" width="1000" align="center" border = "1" cellpadding="1" cellspacing="1" bordercolordark="#808080" bordercolorlight="#ffffff" > 151617181920212223 <% 24 UserManager manager = new UserManager(); 25 List list = manager.GetAllUsers(); 26 27 for (int i = 0; i < list.Count; i++) 28 { 29 Response.Write(""); 30 Response.Write(""); 31 Response.Write(""); 32 Response.Write(""); 33 Response.Write(""); 3435 Response.Write(""); 36 Response.Write(""); 3738 Response.Write(""); 39 } 40 %> 41
"center">序号 "center">姓名 "center">帐号 "center">密码 "center">修改 "center">删除
" + i + "" + list[i].UserName + "" + list[i].UserLogin + "" + list[i].UserPwd + " 修改删除
42 "button" runat="server" Text="转向注册" OnClick="Button1_Click" /> 43 44
45
46 65 66
list.aspx


list.aspx.cs代码只有通过点击button按钮转向到注册页面,对其它功能并无影响

通过点击修改进行更新逻辑代码 UserUpdate.aspx.cs代码

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Web;
 5 using System.Web.UI;
 6 using System.Web.UI.WebControls;
 7 using testDAO.Library;
 8 
 9 public partial class userUpdate : System.Web.UI.Page
10 {
11     protected void Page_Load(object sender, EventArgs e)
12     {
13 
14      User user = new User();
15 
16      user.UserName= Request.QueryString["userName"];
17      user.UserLogin = Request.QueryString["userLogin"];
18      user.UserPwd = Request.QueryString["userPwd"];
19      UserManager manager = new UserManager();
20      bool result = manager.UpdateUser(user);
21      if (result)
22      {
23          Response.Redirect("list.aspx");
24      }
25      else
26      {
27          Response.Write("修改失败");
28      }
29         
30 
31     }
32 }

 

 

通过点击删除进行删除逻辑代码 userDelete.aspx.cs代码

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Web;
 5 using System.Web.UI;
 6 using System.Web.UI.WebControls;
 7 using testDAO.Library;
 8 public partial class userDelete : System.Web.UI.Page
 9 {
10     protected void Page_Load(object sender, EventArgs e)
11     {
12         User user = new User();
13 
14         user.UserLogin = Request.QueryString["userLogin"];
15 
16 
17         UserManager manager = new UserManager();
18         bool result = manager.DeleteUser(user);
19         if (result)
20         {
21             Response.Redirect("list.aspx");
22         }
23         else
24         {
25             Response.Write("删除失败");
26         }
27 
28     }
29 }

 

转载于:https://www.cnblogs.com/a67cm/p/4533985.html

你可能感兴趣的:(ASP.net+SQL server2008简单的数据库增删改查 VS2012)