数据库课设报告.docx

上传人:b****5 文档编号:3877624 上传时间:2022-11-26 格式:DOCX 页数:22 大小:831.60KB
下载 相关 举报
数据库课设报告.docx_第1页
第1页 / 共22页
数据库课设报告.docx_第2页
第2页 / 共22页
数据库课设报告.docx_第3页
第3页 / 共22页
数据库课设报告.docx_第4页
第4页 / 共22页
数据库课设报告.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

数据库课设报告.docx

《数据库课设报告.docx》由会员分享,可在线阅读,更多相关《数据库课设报告.docx(22页珍藏版)》请在冰豆网上搜索。

数据库课设报告.docx

数据库课设报告

淮海工学院计算机工程学院

课程设计报告

设计名称:

数据库原理及应用设计课程设计

姓名:

学号:

专业班级:

系(院):

计算机科学与技术

设计时间:

2015.1.1~~2015.1.12

设计地点:

软件实验室

成绩:

指导教师评语:

 

签名:

年月日

一、概述

随着社会不断的发展,人们的生活水平越来越高,对知识和时事的渴求也越来越高,人们希望能够方便快捷地订阅各种报刊杂志。

但是各种各样的报刊名目和详细信息以及订阅,为相关企业的管理造成很大的麻烦。

因此,网上订阅成为不可或缺的一部分。

本系统就是报刊订阅管理系统。

此系统是一种比较智能化的管理系统,它面向所有企业部门的职工用户,但具有比较高的安全性能。

它能够实现报刊订阅的基本功能,包括新报刊信息的录入、订阅、查询等操作以及后台数据库的备份和恢复。

用户合法注册后必须输入有效密码才能成功进入此系统,可以进行订阅报刊、查询信息等操作。

对于非法操作,系统有识别和防护措施。

二、需求分析

2.1系统开发目标

本系统要能使用户订阅报刊,管理员能很好得管理好报刊,系统界面友好,用户所做的每一步操作都有一定的提示。

2.2系统需求

2.2.1业务需求

提供给用户更多、更好、更便宜报刊,用户可以订购自己所喜欢的、性价比高的报刊。

2.2.2用户需求

用户要可以在本系统内进行报刊的查询、订阅,并且查看自己所订阅的报刊,或是删除自己已订阅的报刊。

2.2.3功能需求

本系统需要前台和后台的设计,既要有管理员的相关操作,又要有用户登录网站后订阅报刊的一系列操作。

故本系统需要设计管理员对报刊信息的删除、修改、添加、查询,用户查询、订阅报刊,查看所订阅的报刊等功能。

三、系统设计

3.1功能分析

3.1.1管理员功能

(1)管理员登陆:

管理员要通过输入用户名和相应的密码才能进入管理系统,即根据用户权限登陆此系统。

(2)报刊的目录管理:

要求能够将报刊目录的相关信息增加到数据库或从数据库中删除和修改或显示报刊信息。

(3)查询已订阅报刊:

管理员查看有多少报刊已订阅。

3.1.2用户功能

(1)用户登陆:

用户要通过输入用户名和相应的密码才能进入管理系统。

(2)注册功能:

新用户可以通过注册获得一个账户进行网页浏览、订阅、查询、管理订阅的功能。

(3)订阅功能:

用户可以订阅报刊,显示在购物车中。

(4)查询功能:

用户可以查询报刊的信息,查询出的信息显示在界面上。

(5)查看已订阅的报刊:

用户对订阅的报刊进行管理。

3.2功能模块图

 

3.3各实体的E-R图

3.3.1报刊查询E-R图

 

3.3.2报刊订阅E-R图

 

3.3.3报刊更改、删除E-R图

 

3.3.4报刊添加E-R图

 

3.4总E-R图

 

用户(用户名,密码)

管理员(管理员名,密码)

报刊(编号,报刊名称,价格,年限,类别)

3.5将关系模型转换为数据库表

3.5.1管理员Admin_Login表:

3.5.2用户User_login表:

3.5.3报刊信息BK表:

3.5.4用户订阅报刊信息dd表:

四、系统实现

4.1主界面:

在这个系统中设置了两种登录方式,一种是管理员登录,一种是普通用户登录,当你选择管理员登录时,你可以进入manage.aspx界面进行后续操作;当你选择普通用户登录时,你就可以进入index.aspx界面,进行其他操作。

图1:

选择登录方式

 

4.2管理员登录界面:

进入此界面的时候,需要进行身份验证,输入管理员名----顾建云以及相应密码时,就可以直接登录,否则就会提示错误信息,需要重新登录。

图2:

管理员登录

主要代码:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Linq;

usingSystem.Web;

usingSystem.Web.UI;

usingSystem.Web.UI.WebControls;

usingSystem.Data;

publicpartialclassAdminLogin:

System.Web.UI.Page

{

BaseClassBassClass1=newBaseClass();

protectedvoidPage_Load(objectsender,EventArgse)

{

}

protectedvoidButton1_Click(objectsender,EventArgse)

{

stringstrsql="select*from[Admin_login]where管理员名='"+TextBox1.Text+"'and密码='"+TextBox2.Text+"'";

DataSetds=newDataSet();

ds=BassClass1.GetDataSet(strsql,"Adminname");

if(ds.Tables["Adminname"].Rows.Count==0)

{

stringscriptString="alert('"+"管理员名不存在或密码错误,请确认后再登录!

"+"');";

Page.ClientScript.RegisterClientScriptBlock(this.GetType(),"warning",scriptString,true);

}

else

{

Session["name"]=TextBox1.Text;

div1.Visible=false;

Response.Redirect("manage.aspx");

}

}

protectedvoidTextBox1_TextChanged(objectsender,EventArgse)

{

}

protectedvoidButton2_Click(objectsender,EventArgse)

{

Response.Redirect("choose.aspx");

}

}

4.3报刊信息管理界面:

当管理员登录后,页面显示是所有报刊的信息,管理员可以根据现有的报刊进行相应的报刊信息管理:

修改、添加、删除报刊相应信息,也可以对用用户已订购的信息进行查阅;当管理员进行好一系列的操作后,点击退出返回choose.aspx界面。

图3:

报刊信息管理

 

4.4修改报刊信息界面:

当管理员在报刊信息管理界面中选择了“修改报刊信息”后进入此界面进行各个报刊相应信息的修改,其中用的是GridView控件实现的修改。

图4:

修改报刊信息

4.5添加报刊信息界面:

当管理员在报刊信息管理界面中选择了“添加报刊信息”后进入此界面进行相应报刊的添加,如果无意中点进此页面,可以按“取消”按钮返回manage.aspx界面进行重新选择;当输入好报刊的各个信息后按“提交”按钮则会连接到数据库添加此报刊,也可以查看是否添加成功。

图5:

添加报刊

关键代码:

publicpartialclassadd:

System.Web.UI.Page

{

BaseClassBassClass1=newBaseClass();

protectedvoidPage_Load(objectsender,EventArgse)

{

}

protectedvoidButton1_Click(objectsender,EventArgse)

{

if(CustomValidator1.IsValid==true)

{

stringstrsql;

strsql="insertinto[BK](编号,报刊名称,价格,年限,类别)values('"+TextBox1.Text+"','"+TextBox2.Text+"','"+TextBox3.Text+"','"+TextBox4.Text+"','"+TextBox5.Text+"')";

BassClass1.execsql(strsql);

TextBox1.Text="";

TextBox2.Text="";

TextBox3.Text="";

TextBox4.Text="";

TextBox5.Text="";

}

else

{

Page.ClientScript.RegisterClientScriptBlock(this.GetType(),"提示","alert('已包含,请重新输入')",true);

}

}

protectedvoidCustomValidator1_ServerValidate(objectsource,ServerValidateEventArgsargs)

{

stringstrsql="select*from[BK]where编号='"+TextBox1.Text+"'";

DataSetds=newDataSet();

ds=BassClass1.GetDataSet(strsql,"编号");

if(ds.Tables["编号"].Rows.Count>0)

{

args.IsValid=false;

}

else

{

args.IsValid=true;

}

}

protectedvoidButton2_Click(objectsender,EventArgse)

{

Response.Redirect("manage.aspx");

}

protectedvoidButton3_Click(objectsender,EventArgse)

{

Response.Redirect("show.aspx");

}

}

4.6显示报刊信息界面:

利用GridView控件实现报刊信息的显示,并且可以返回上一层。

图6:

显示报刊信息

4.7删除报刊信息界面:

当管理员在报刊信息管理界面中选择了“删除报刊信息”后进入此界面进行相应报刊的删除,其中用的是GridView控件实现的删除。

图7:

删除报刊信息

4.8查询用户已订阅报刊界面:

此界面是用控件GridView来实现查询用户所订阅的报刊。

图8:

查询用户已订阅报刊

4.9用户登录界面:

当在主界面中选择了普通用户登录后,进入此界面进行用户的登录,如果用户输入的用户名或密码与数据库中的不一致时,则会出现弹框提示错误信息提示出错;如果该用于尚未注册,则可以点击“注册”按钮进行用户注册,当然也可以返回主界面。

图9:

用户登录

 

主要代码:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Linq;

usingSystem.Web;

usingSystem.Web.UI;

usingSystem.Web.UI.WebControls;

usingSystem.Data;

publicpartialclasslogin:

System.Web.UI.Page

{

BaseClassBassClass1=newBaseClass();

protectedvoidPage_Load(objectsender,EventArgse)

{

}

protectedvoidButton1_Click(objectsender,EventArgse)

{

stringstrsql="select*from[User_login]where用户名='"+TextBox1.Text+"'and密码='"+TextBox2.Text+"'";

DataSetds=newDataSet();

ds=BassClass1.GetDataSet(strsql,"username");

if(ds.Tables["username"].Rows.Count==0)

{

stringscriptString="alert('"+"用户名不存在或密码错误,请确认后再登录!

"+"');";

Page.ClientScript.RegisterClientScriptBlock(this.GetType(),"warning",scriptString,true);

}

else

{

Session["name"]=TextBox1.Text;

div1.Visible=false;

Response.Redirect("index.aspx");

}

}

protectedvoidButton2_Click(objectsender,EventArgse)

{

Response.Redirect("UserOrder.aspx");

}

protectedvoidTextBox1_TextChanged(objectsender,EventArgse)

{

}

protectedvoidButton3_Click(objectsender,EventArgse)

{

Response.Redirect("choose.aspx");

}

}

4.10报刊订阅界面:

当用户登陆后后,进入此界面进行报刊订阅,该界面中显示着所用报刊的相应信息,用户可以输入要订阅的报刊的编号进行添加订单;同样可以点击“查询”进行相应的报刊查询,如果进行完一切的操作后也可退出订阅界面返回主界面。

图10:

订阅报刊

主要代码:

publicpartialclassindex:

System.Web.UI.Page

{

BaseClassBassClass1=newBaseClass();

protectedvoidPage_Load(objectsender,EventArgse)

{

}

protectedvoidButton1_Click(objectsender,EventArgse)

{

Response.Redirect("index.aspx");

protectedvoidButton2_Click(objectsender,EventArgse)

{

Response.Redirect("shopping.aspx");

}

protectedvoidGridView1_SelectedIndexChanged(objectsender,EventArgse)

{

}

protectedvoidButton3_Click(objectsender,EventArgse)

{

if(CustomValidator1.IsValid==true)

{

stringstrsql;

strsql="SELECT*FROM[BK]WHERE编号='"+TextBox2.Text+"'";

DataSetds=newDataSet();

ds=BassClass1.GetDataSet(strsql,"Conn");

if(ds.Tables["Conn"].Rows.Count==0)

{

GridView1.Visible=false;

Page.ClientScript.RegisterClientScriptBlock(this.GetType(),"提示","alert('无此报刊,请重新输入')",true);

}

else

{

strsql="insertinto[dd]SELECT*FROM[BK]Where编号='"+TextBox2.Text+"'";

ds=BassClass1.GetDataSet(strsql,"Conn");

}

}

else

{

Page.ClientScript.RegisterClientScriptBlock(this.GetType(),"提示","alert('已订阅,请重新输入')",true);

}

}

protectedvoidGridView2_SelectedIndexChanged(objectsender,EventArgse)

{

}

protectedvoidTextBox2_TextChanged(objectsender,EventArgse)

{

}

protectedvoidCustomValidator1_ServerValidate(objectsource,ServerValidateEventArgsargs)

{

stringstrsql="select*from[dd]where编号='"+TextBox2.Text+"'";

DataSetds=newDataSet();

ds=BassClass1.GetDataSet(strsql,"编号");

if(ds.Tables["编号"].Rows.Count>0)

{

args.IsValid=false;

}

else

{

args.IsValid=true;

}

}

}

4.11报刊订阅查询界面:

如果用户添加订单后可以在此界面查询已订阅的报刊,并且可以删除已订阅的报刊。

图11:

查询已订阅报刊

4.12报刊查询界面:

查输入所要查询的报刊编号查询报刊的相关的信息,查询成功或失败时都有相应的提示,也可以返回报刊订阅界面。

图12:

查询报刊相关信息

 

关键代码:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Linq;

usingSystem.Web;

usingSystem.Web.UI;

usingSystem.Web.UI.WebControls;

usingSystem.Data;

publicpartialclassselect:

System.Web.UI.Page

{

BaseClassBaseClass1=newBaseClass();

protectedvoidPage_Load(objectsender,EventArgse)

{

Label1.Visible=false;

}

protectedvoidButton1_Click(objectsender,EventArgse)

{

Label1.Visible=true;

stringstrsql;

strsql="select*fromBKwhere编号='"+TextBox1.Text+"'";

DataSetds=BaseClass1.GetDataSet(strsql,"Conn");

if(ds.Tables["Conn"].Rows.Count==0)

{

Label1.Text="输入的报刊编号不存在!

";

GridView1.Visible=false;

}

else

{

GridView1.DataSource=ds;

GridView1.DataBind();

GridView1.Visible=true;

Label1.Text="查找成功!

";

}

}

protectedvoidButton2_Click(objectsender,EventArgse)

{

Response.Redirect("index.aspx");

}

}

 

五、课程设计心得体会

通过这次的课程设计,我受益了很多,因为这次设计是对数据库的实际应用,原本对这些学得并不是很好的我,通过这次的课程设计让我对数据库的查询,修改,添加,删除等操作更加熟悉了。

由于本学期刚好学习了ASP.NET,所以就利用此软件来完成报刊订阅系统。

刚开始做的时候只会在页面中插入一些基本的控件,并不知道如何跟数据库连接,如何实现对数据库的一系列的操作并且将其显示到页面上。

后来通过认真的看ASP.NE动态网站开发教程并且上网搜索相关的知识,才了解用何语句对数据库进行操作。

但是在编写代码的时候还是遇到了不少的问题,比如说缺少了头文件,导致无法识别下面用到的关键词。

在实现了各个功能后,如何优化界面也废了一番脑经,例如:

管理员或用户登录时,名字和密码不一致如何显示错误信息,查询报刊信息成功时如何显示查询成功等。

本次的课程设计,不仅要做前台还要涉及到后台的管理,理论和知识相结合,让我得到了充分地锻炼,也提高了我思维的缜密性。

由于对于ASP.NET这门课程学习的不是很好,所以不断的遇到问题,我希望在以后能通过自己的不断努力做得更好,明白得更加深刻!

参考文献

[1]数据库系统原理与应用教程李春葆清华大学出版社

[2]数据库系统原理与应用—SQLServer2000夏冰冰国防工业出版社

[3]ASP.NET动态网站开发教程(第三版)韩颖,卫琳清华大学出版社

[4]数据库系统概论王珊,萨师煊高等教育出版社

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 数学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1