1、aspnet课程设计报告2 A动态网站设计报告 设计题目: 图书信息管理系统设计 学院: 班级: 姓名: 学号: 摘 要 在科技发达的今天,图书馆还是在现在中占了很大部分,大多数学生都把图书馆当成了一个很好的学习的地方,里面的图书可以丰富我们的只是,所以对图书的管理也就很重要了。我们对图书的管理可以让同学们更好的了解到图书是否借出,对书籍好查看。 通过本系统达到以下目的: 1)使用ASP.NET操作数据库。 2)使用数据绑定控件显示和同步数据库数据。 3)在多个窗体之间交换数据。 4)熟悉运用SQL SERVER数据库软件。 关键词:图书管理 ;数据库 ;控件 1 软件需求分析说明书软件需求分
2、析,其目的是用于说明软件产品或软件项目需要满足的条件和限制。在软件工程项目中,首先要获取用户的需求,通过对软件需要的提取、分析、文档化和验证,为进一步的设计和实现提供数据。软件需求与其他活动也密切相关,如软件测试、配置管理和质量管理等。图书管理系统”主要提供图书信息和读者基本信息的维护以及借阅等功能。本系统是提高图书管理工作的效率,减少相关人员的工作量,使学校的图书管理工作真正做到科学、合理的规划,系统、高效的实施。 2 系统分析与设计2.1系统功能设计 本系统实现了图书管理系统,总体分为以下几个模块:管理员界面(图书添加,修改,查询,删除),其他人员界面(查看)。 图1 系统功能模块图 2.
3、2 数据库设计 在图书管理系统中,一本书只能被一个同学借出,一个用户可以多次登录,但只能注册一次,因此,图书管理系统设计的对象有同学,借书,书本信息.2.2.1 图书管理系统中有2个表需要建立 用户表(student),包括学生编号(sno)、学生账号(users)、密码(pass)、姓名(sname)、性别(sex)、年龄(age)、地址(address)、电话(tell)、管理员(Role); 图书表,包括图书编号(bid)、图书号(bno)、图书名(bname)、作者(writer)、价格(money)、借出(lend);2.2.2实际操作建立数据库book,建立如下各表(1)用户表 包
4、括编号、账号、密码、姓名、年龄、性别、地址、联系电话、家庭住址,用于存储用户的主要信息,可以通过前台对学生表数据进行增加、删除、修改、查询操作。用户的主键是users(用户账号)。用户表表是本数据库的重要信息表。 表1 用户表字段名数据类型大小字段描述Snoint编号,自动递增,作主键UserChar10账号PassNvarchar15密码Snamevarchar2姓名Sexvarchar15性别Ageint年龄Addressvarchar15地址TellNvarchar15电话RoleBit是否为管理员(2)图书表 包括图书编号、图书号、图书名、作者、价格等。用于图书的主要信息,可以通过前台
5、对图书表数据进行增加、删除、修改、查询操作。图书表的主键是bno(图书号),图书表是本数据库的重要信息表。 表2 图书表字段名数据类型大小字段描述BidInt列表编号Bnochar10图书编号bnamevarchar15图书姓名writernvarchar20作者moneynchar10价格 3 系统实现3.1建库代码-创建数据库bookcreate database book;-连接数据库bookuse book;-创建student表CREATE TABLE student(sno int,users char(5) primary key, pass varchar(8) not nul
6、l, sex char(2) check(sex in(男,女), sname varchar(20) not null, age int, address varchar(50) not null, tell varchar(15),role bit)-创建book表CREATE TABLE bok( bid int not null,bno char(5) primary key, bname varchar(10), writer varchar(15), monry char(5) not null, )3.2 数据库连接该系统所有的数据库的连接参数都在配置文件web.config文件
7、中 3.3 A后台主要代码3.3.1注册模块 只有注册成为用户之后才能使用本系统,注册需要输入用户名,密码,再次输入密码等等,然后点击注册按钮,其具体效果图如图2所示: 图2 用户注册界面namespace report.lib public partial class regist: System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) protected void Button1_Click(object sender, EventArgs e) string users = this.TextBox
8、1.Text.Trim(); string pass = this.TextBox2.Text.Trim(); string pass1 = this.TextBox3.Text.Trim(); string sname = this.TextBox4.Text.Trim(); string sex = ; string age = this.TextBox5.Text.Trim(); string address = this.TextBox6.Text.Trim(); string tell = this.TextBox7.Text.Trim(); if (RadioButton1.Che
9、cked =true) sex = RadioButton1.Text; else sex = RadioButton2.Text; string sqlStr = select users from student where users= + users + ; DB db=new DB(); bool count = db.GetReader(sqlStr).HasRows; if (count) Response.Write(alert(账号存在!);location=注册.aspx); else if (this.TextBox1.Text!=) string sqlStr1 = i
10、nsert into student(users,pass,sname,sex,age,address,tell)values( + users + , + pass + , + sname + , + sex + , + age + , + address + , + tell + ); int count1 = db.ExectSql(sqlStr1); if (count1 0) Response.Write(alert(注册成功);); Clear(); else Response.Write(alert(注册失败;location=注册.aspx); public void Clea
11、r() this.TextBox1.Text = ; this.TextBox2.Text = ; this.TextBox3.Text = ; this.TextBox4.Text = ; this.TextBox5.Text = ; this.TextBox6.Text = ; this.TextBox7.Text = ; protected void Button2_Click(object sender, EventArgs e) Response.Redirect(登录.aspx); 3.3.2登陆界面 用户注册后便可登录,输入用户名和密码,点击登录按钮便可成功登陆,具体效果如图3所
12、示图3 登陆界面namespace report.lib public partial class second : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) protected void Button1_Click(object sender, EventArgs e) string users = this.TextBox1.Text.Trim(); string pass = this.TextBox2.Text.Trim(); string sqlStr = select users
13、from student where users= + users + and pass= + pass + ; DB db = new DB(); SqlDataReader dr = db.GetReader(sqlStr); dr.Read(); if (dr.HasRows) / Sessionsno = dr.GetValue(0); SessionRole = dr.GetValue(0); if(dr.GetValue(0)=null) Response.Redirect(about.aspx); else Response.Redirect(main.aspx); else R
14、esponse.Write(alert(登陆失败);location=登陆.aspx); dr.Close(); protected void Button2_Click(object sender, EventArgs e) Response.Redirect(注册.aspx); 3.3.3用户管理 用户登陆成功后便可进入用户管理页面,选择是否为管理员。具体效果如图4所示 图4 用户管理界面namespace report.lib public partial class user : System.Web.UI.Page protected void Page_Load(object se
15、nder, EventArgs e) if (!IsPostBack) dbind(); public void dbind() SqlConnection myCon =DB.GetConnection(); myCon.Open(); string sqlStr = select * from student; SqlDataAdapter myDa = new SqlDataAdapter(sqlStr, myCon); DataSet myDs = new DataSet(); myDa.Fill(myDs); GridView1.DataSource = myDs; GridView
16、1.DataBind(); myCon.Close(); protected void GridView1_RowEditing1(object sender, GridViewEditEventArgs e) GridView1.EditIndex = e.NewEditIndex; this.dbind(); protected void GridView1_OnRowUpdating1(object sender, GridViewUpdateEventArgs e) int id = Convert.ToInt32(GridView1.DataKeyse.RowIndex.Value.
17、ToString(); string sname = (TextBox)(GridView1.Rowse.RowIndex.Cells0.Controls0).Text.ToString(); string tell=(TextBox)(this.GridView1.Rowse.RowIndex.Cells1.Controls0).Text.ToString(); string Role = (CheckBox)(this.GridView1.Rowse.RowIndex.Cells2.Controls0).Checked.ToString(); string sqlStr = update
18、student set sname= + sname + ,tell= + tell + ,Role= + Role + where users= + id; DB db = new DB(); db.ExectSql(sqlStr); GridView1.EditIndex = -1; dbind(); protected void GridView1_OnRowCancelingEdit1(object sender, GridViewCancelEditEventArgs e) GridView1.EditIndex = -1; this.dbind(); protected void
19、GridView1_OnRowDeleting(object sender, GridViewDeleteEventArgs e) DB db = new DB(); int id = Convert.ToInt32(GridView1.DataKeyse.RowIndex.Value.ToString(); string sqlStr = delete from student where users= + id; db.ExectSql(sqlStr); GridView1.EditIndex = -1; dbind(); protected void LinkButton1_Click(
20、object sender, EventArgs e) Response.Redirect(second.aspx); /protected void GridView1_OnRowDataBound(object sender, GridViewRowEventArgs e) / / if (e.Row.RowType = DataControlCellType.DataRow) / / (LinkButton)e.Row.Cells4.Controls0).Attributes.Add(onclick,return confirm(“确定删除); / dbind(); / / 3.3.4管
21、理员界面 用户通过输入账号密码,为管理员进入此页面,具体效果如图6所示 图5 管理员界面namespace report.lib public partial class adminu : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) if (!IsPostBack) dbind(); public void dbind() SqlConnection myCon =DB.GetConnection(); myCon.Open(); string sqlStr = select * from st
22、udent; SqlDataAdapter myDa = new SqlDataAdapter(sqlStr, myCon); DataSet myDs = new DataSet(); myDa.Fill(myDs); GridView1.DataSource = myDs; GridView1.DataBind(); myCon.Close(); protected void GridView1_RowEditing1(object sender, GridViewEditEventArgs e) GridView1.EditIndex = e.NewEditIndex; this.dbi
23、nd(); protected void GridView1_OnRowUpdating1(object sender, GridViewUpdateEventArgs e) int id = Convert.ToInt32(GridView1.DataKeyse.RowIndex.Value.ToString(); string sname = (TextBox)(GridView1.Rowse.RowIndex.Cells0.Controls0).Text.ToString(); string tell=(TextBox)(this.GridView1.Rowse.RowIndex.Cells1.Controls0).Text.ToString(); string Role = (CheckBox)(this.GridView1.Rowse.RowIndex.Cells2.Controls0).Checked.ToString(); string sqlStr = update student set sname= + sname + ,tell= + tell + ,Role= + Role + where users= + id; DB db = new DB(); db.ExectSql(sqlStr); GridView1.EditIndex = -1; dbi
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2