数据库课程设计(用到SQL和ASP).doc
《数据库课程设计(用到SQL和ASP).doc》由会员分享,可在线阅读,更多相关《数据库课程设计(用到SQL和ASP).doc(30页珍藏版)》请在咨信网上搜索。
数据库课程设计(用到SQL和ASP) ———————————————————————————————— 作者: ———————————————————————————————— 日期: 2 个人收集整理 勿做商业用途 成绩: 题 目 学生成绩管理系统 评 语: 课程名称 数据库原理与应用课程设计 学 院 计算机工程学院 姓 名 班 级学 号 指导教师 2013年 1 月 3 日 目录 一、 基本信息……………………………………………………3 1、 背景 …………………………………………………………3 2、 数据需求 ……………………………………………………3 3、 总体方案设计 ………………………………………………4 二、数据库系统设计 ……………………………………………4 1、 逻辑与物理结构 ……………………………………………4 2、 E-R模型设计………………………………………………5 3、 数据库表 ……………………………………………………5 4、 SQL定义语句 ………………………………………………6 5、 数据库关系图 ………………………………………………7 6、 数据库的实施 ………………………………………………7 7、 数据库的维护 ………………………………………………7 8、 数据库的安全性 ……………………………………………8 三、系统实现 ……………………………………………………8 1、开发环境………………………………………………………8 2、系统流程图……………………………………………………8 3、程序主要功能 ………………………………………………18 四、基本运行模块 ……………………………………………19 1、学生成绩的查、插、删、改模块 …………………………27 五、结束语………………………………………………………28 30 一、 基本信息 1 背景 1)学校有学生若干万名,每个学生每学期必须学习若干门课程。 2)每个学生有学号、姓名、性别、班级、出生日期等基本信息。 3)每门课程有课程号,课程名称、任课教师、学分等信息。 4)学校需要对每个学生的基本信息、所学课程、成绩进行统一管理,以便于对信息进行查询、浏览和修改。 随着科技的发展,基本上所有的具有一定数量数据的机构都开始使用计算机数据库来做管理。几乎所有学校也都已经在使用计算机管理数据的机制,大大减少了学校学生成绩管理的工作量。该课程设计要求设计一个学生成绩的数据库管理系统,数据库中要求包含学生的基本信息,学科基本信息,以及学生所学课程的考试成绩。要方便学生进行成绩查询,通过该课程设计,应该达到把数据库理论知识更加的巩固加深,加强动手能力与实践能力,学以致用,与现实生活中的应用充分的结合起来。显示成绩表中的课程号在课程表中、计算机系的成绩表显示某学生的学号,姓名,所学课程号,课程名称和对应的成绩在执行此存储过程时,如果没有给出参数(学生姓名),则输入全部的学生的学号,姓名,班级,及其姓名,所学课程名称和成绩,如果有,显示此学生的以上信息. 2 数据需求 主要功能用来对中学生的成绩进行收集和修改。具体包括中学生成绩录入、修改、增加、删除、查询、等功能,由于一些资料可以Word文档或Excel表格输入,故在此模块中增加了导入、导出数据功能。成绩录入需要分班级、分年级以及某个时间考试的各门功课的成绩。修改要与成绩录入相对应.增加、删除是对基本表的操作。查询条件设置应该齐全,可以班级查询,年级查询,也可以姓名查询,学号查询等等。学生成绩管理系统主要用于学生成绩信息管理,据分析学生成绩管理系统的数据表可浓缩为:学生基本信息表、课程基本信息表和学生成绩信息表.根据学校的情况,可按下面的步骤来分析: (1) 确定学生所在的院系、所学的专业以及所在的班级。 (2) 确定学生所在班级的课程以及该课程学生的成绩;另外还需要知道学生所在班级、学号和学期。 (3) 分析学生的基本信息,如姓名、性别、年龄、联系电话。 (4)用户信息分析,通常包括用户名和密码。 3总体方案设计 1,管理员能够实现对整个学生信息的添加,修改,删除,查询等操作。 2,可以将学生成绩的数据库发布到网上,方便学生进行查询,达到资源共享的目的。 3,学生可以在自己的权限内对对自己成绩的查询,以及个人信息的查询,登录密码的修改,留言的查看,提交留言信息的相关操作。 二、 数据库系统设计 1逻辑和物理结构设计由系统E-R图转化而得到的关系模式如下: (1)学生(学号,姓名,性别,年龄,地址,系别),其主关键字为学号; (2)课程(课程名,课程号,学时,学分),其中主关键字为课程号; (3)成绩(课程号,学号,分数)其中主关键字为学号和课程号。可以与学生关系模式合并为:学生(学号,姓名,性别,年龄,地址,系别,成绩,课程号)。 确定关系模型的存取方法 在将概念模型转换成物理模型之后,我们可以对物理模型进行设计,双击物理模型的关系,可以对该关系的名称、注释等信息进行查询。可对该关系的属性列进行设计,可分别设置其名称、码、数据类型以及主码、是否为空等。在实际设计中最常用的存取方法是索引发,使用索引可以大大减少数据的查询时间,在建立索引时应遵循:在经常需要搜索的列上建立索引; 在主关键字上建立索引;在经常用于连接的列上建立索引,即在外键上建立索引;在经常需要根据范围进行搜索的列上创建索引,因为索引已经排序,其指定的范围是连续的等规则。才能充分利用索引的作用避免因索引引起的负面作用。逻辑结构是独立于任何一种数据模型的信息结构. 性别 2 E-R 模型设计 课程 学生 专业 学号 系别 姓名 查询成绩 学时 课程号 课程名称 学分 成绩 根据E—R图,将其转化为如下数据实体,数据库:学生成绩管理系统.dbc,包括如下的表和视图:数据项是数据库的关系中不可再分的数据单位,下表分别列出了数据的名称、数据类型、长度、取值能否为空。利用SQL Server 2000建立“学生选课"数据库,其基本表清单及表结构描述如下:数据库中用到的表: 1) 学生登记表——Student.dbo。 字段名称 字段类型 字段宽度 sn 字符型 10 sname 字符型 10 ssex 字符型 4 sage 字符型 10 depart 字符型 10 2) 课程登记表——Class.dbo。 字段名称 字段类型 字段宽度 cno 字符型 10 cname 字符型 10 ctime 字符型 50 degree 字符型 10 3) 成绩登记表——chenji.dbo。 字段名称 字段类型 字段宽度 sno 字符型 10 cno 字符型 10 degree 字符型 10 2其视图关系可由以下SQL语句定义: CREATE PROCEDURE p_SelectCno @cno char(10) AS SELECT*FROM Class WHERE Cno=@cno//用于Class表删除语句 CREATE PROCEDURE p_SelectSno @sno char(10) AS SELECT*FROM Student WHERE Sno=@sno//用于Student表删除语句 所建数据库如下图所示: 学生登记表——Student。dbo: 课程登记表——Class.dbo: 成绩登记表——chenji.dbo: 数据库关系图如下: 数据库的实施: 此阶段主要任务包括创建数据库,加载初始数据,数据库试运行,数据库的安全性和完整性控制数据库的备份与恢复,数据库性能的监督分析和改仅,数据库的重组和重构等。首先在数据库中建立一个学生成绩管理系统数据库,然后新建一个数据源。 数据库的维护: 当运行数据库合格后,数据库开发设计的工作就基本完成了,接下来就是正式运行中的调试,应为该系统比较简单,数据量小,数据库中几乎不会发生什么大的变化,但是还是需要做好数据的备份,在sql server2005中我们可以利用备份数据库的功能对已经设计好的数据做备份,如果数据库受到破坏或系统故障,我们便可轻松的利用备份文件恢复数据库的数据。当然也可以利用其他各种方法进行数据维护。 数据库的安全性: 所谓计算机系统安全性,是指为计算机系统建立和采取的各种安全保护措施,以保护计算机系统中的硬件,软件及数据,防止其偶然或恶意的原因使系统遭到破坏,数据遭到更改或泄露等。为防止因用户非法使用数据库造成数据泄露、更改或破坏,必须采取一些安全性控制措施以保证数据库中数据的安全、可靠和正确有效.安全性控制的防范对象是非法用户和非法操作,防止他们对数据库数据的非法存取。主要采用用户标识及鉴定,使用用户名或用户标识号来标明用户身份。 用户想要对对数据库内容进行相关操作,必须申请一个用户名或用户标识号,每次登陆都必须输入该用户名以及相应正确的口令,然后系统对其进行验证,只有通过验证的用户方可对数据库进行操作. 三、系统实现 1 开发环境 本系统通过SQL、 Microsoft Visual studio 2005 软件共同协助下可以正常运行 2 系统流程图 系统流程图模块主要的流程图如下: 用户登陆界面 目录界面 查询成绩 修改成绩 插入成绩 删除成绩 学生个人信息 3 程序主要功能界面(在Microsoft Visual studio 2005 软件环境下做) 首先要先连接数据库(这点很重要) 登录界面:利用工具箱中的控件先设计好自己所需要的基本样式,然后在aspx。cs下输入: using System; using System.Data; using System。Configuration; using System。Web; using System.Web。Security; using System。Web.UI; using System.Web。UI。WebControls; using System.Web。UI。WebControls。WebParts; using System。Web.UI。HtmlControls; public partial class _Default : System.Web.UI。Page { protected void Page_Load(object sender, EventArgs e) { Response.Write("用户名为:<FontInfo color=blue>”+this。TxtUsername。Text+”</font〉”); Response.Write(”,口令为:<FontInfo color=blue〉”+this.TxtPassword.Text+”</font>”); Response.Write(",当前时间:"+DateTime.Now。ToString()); } protected void Button1_Click(object sender, EventArgs e) { Response。Redirect("第二个界面。aspx”); } } 目录界面:同样利用控件设计好自己所需要的样式再输入: using System; using System。Data; using System.Configuration; using System.Collections; using System。Web; using System.Web.Security; using System。Web.UI; using System。Web。UI.WebControls; using System。Web.UI。WebControls。WebParts; using System.Web.UI。HtmlControls; public partial class 查_删_改_插aspx : System.Web。UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void Button1_Click(object sender, EventArgs e) { Response。Redirect(”查询成绩。aspx"); } protected void Button2_Click(object sender, EventArgs e) { Response.Redirect(”插入成绩.aspx"); } protected void Button3_Click(object sender, EventArgs e) { Response.Redirect("修改成绩。aspx”); } protected void Button4_Click(object sender, EventArgs e) { Response.Redirect(”删除成绩。aspx"); } protected void Button5_Click(object sender, EventArgs e) { Response。Redirect(”学生个人信息.aspx”); } protected void Button6_Click(object sender, EventArgs e) { Response。Redirect("Class查询。aspx"); } protected void Button7_Click(object sender, EventArgs e) { Response。Redirect(”Class插入.aspx”); } protected void Button8_Click(object sender, EventArgs e) { Response.Redirect("Class修改.aspx"); } protected void Button9_Click(object sender, EventArgs e) { Response.Redirect("Class删除.aspx”); } protected void Button10_Click(object sender, EventArgs e) { Response.Redirect(”学生课程信息.aspx"); } } 查询界面:同样利用控件设计出样式再输入 using System; using System。Data; using System。Configuration; using System。Collections; using System。Web; using System。Web。Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web。UI。WebControls。WebParts; using System.Web.UI.HtmlControls; using System.Data。SqlClient; public partial class 查询成绩 : System.Web.UI。Page { protected void Page_Load(object sender, EventArgs e) { } protected void Button1_Click(object sender, EventArgs e) { } protected void BtnOK_Click(object sender, EventArgs e) { string conStr = "Data Source=.;Initial Catalog=”; conStr = conStr + "学生成绩管理系统;Integrated Security=True"; SqlConnection con = new SqlConnection(conStr); con。Open(); SqlDataAdapter sda = new SqlDataAdapter("p_SelectSno”,con); sda。SelectCommand。CommandType = CommandType.StoredProcedure; sda。SelectCommand.Parameters。Add(”@sno”, SqlDbType.VarChar, 20).Value = this.TxtSno.Text; DataSet ds = new DataSet(); sda.Fill(ds); if (ds.Tables[0].Rows.Count == 0) { Response。Write(”<Script>alert(’没有查询到数据')</Script>"); } else { this.GridView1.DataSource = ds; this。GridView1。DataBind(); } } protected void Button1_Click1(object sender, EventArgs e) { Response.Redirect(”第二个界面.aspx"); } } 修改界面:得用工具箱中的控件得到相应的样式,再输入: using System; using System。Data; using System。Configuration; using System.Collections; using System。Web; using System.Web。Security; using System。Web.UI; using System.Web.UI。WebControls; using System。Web。UI。WebControls。WebParts; using System.Web。UI。HtmlControls; public partial class 插入成绩 : System.Web。UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void Button1_Click(object sender, EventArgs e) { Response。Redirect(”第二个界面.aspx”); } } 删除界面:同样利用控件得到自己想要的样式,再输入: using System; using System。Data; using System。Configuration; using System.Collections; using System。Web; using System。Web.Security; using System.Web。UI; using System.Web。UI。WebControls; using System。Web。UI.WebControls.WebParts; using System。Web.UI。HtmlControls; using System.Data。SqlClient; public partial class 删除成绩 : System。Web。UI。Page { protected void Page_Load(object sender, EventArgs e) { } protected void BtnDelete_Click(object sender, EventArgs e) { string conStr = ”Data Source=.;Initial Catalog=”; conStr = conStr + ”学生成绩管理系统;Integrated Security=True”; SqlConnection con = new SqlConnection(conStr); con.Open(); string cmdStr=”delete from Student where sno=’”+this。TxtSno.Text+”'"; SqlCommand cmd=new SqlCommand(cmdStr,con); try {cmd.ExecuteNonQuery(); Response。Write("〈script>alert('删除成功')〈/script〉"); } catch(SqlException sqle) {Response。Write(”异常:<br〉"+sqle。ToString()); } finally {con.Close(); } } protected void Button1_Click(object sender, EventArgs e) { Response.Redirect(”第二个界面。aspx”); } } 插入界面:利用工具箱中的控件得到相应的样式,再输入: using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System。Web.Security; using System.Web。UI; using System。Web。UI。WebControls; using System。Web.UI.WebControls.WebParts; using System。Web。UI.HtmlControls; public partial class 插入成绩 : System.Web。UI。Page { protected void Page_Load(object sender, EventArgs e) { } protected void Button1_Click(object sender, EventArgs e) { Response。Redirect("第二个界面.aspx”); } } 学生个人信息界面:同样利用控件得到想要的样式,再输入: using System; using System.Data; using System。Configuration; using System。Collections; using System。Web; using System.Web。Security; using System.Web.UI; using System。Web。UI。WebControls; using System。Web。UI.WebControls.WebParts; using System。Web。UI。HtmlControls; public partial class 学生个人信息 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void TextBox2_TextChanged(object sender, EventArgs e) { } protected void Button1_Click(object sender, EventArgs e) { Response。Redirect(”第二个界面.aspx"); } } 课程信息:通过设计相应的控件得到界面,再输入: using System; using System。Data; using System.Configuration; using System。Collections; using System.Web; using System.Web。Security; using System.Web。UI; using System.Web。UI。WebControls; using System.Web.UI.WebControls.WebParts; using System.Web。UI.HtmlControls; public partial class 学生课程信息 : System。Web。UI。Page { protected void Page_Load(object sender, EventArgs e) { } protected void Button1_Click(object sender, EventArgs e) { Response。Redirect("第二个界面。aspx"); } } Class查询界面:同样通过控件设计,再输入: using System; using System。Data; using System.Configuration; using System。Collections; using System。Web; using System。Web.Security; using System。Web。UI; using System.Web.UI。WebControls; using System.Web.UI。WebControls。WebParts; using System。Web.UI.HtmlControls; using System。Data.SqlClient; public partial class Class查询 : System.Web。UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void BtnOK_Click(object sender, EventArgs e) { string conStr = "Data Source=。;Initial Catalog=”; conStr = conStr + ”学生成绩管理系统;Integrated Security=True”; SqlConnection con = new SqlConnection(conStr); con.Open(); SqlDataAdapter sda = new SqlDataAdapter("p_SelectCno", con); sda。SelectCommand.CommandType = CommandType。StoredProcedure; sda。SelectCommand。Parameters。Add("@cno", SqlDbType.VarChar, 20).Value = this。TxtCno.Text; DataSet ds = new DataSet(); sda.Fill(ds); if (ds.Tables[0].Rows.Count == 0) { Response。Write(”<Script〉alert(’没有查询到数据’)</Script〉"); } else { this。GridView1。DataSource = ds; this.GridView1。DataBind(); } } protected void Button1_Click(object sender, EventArgs e) { Response。Redirect("第二个界面。aspx"); } } Class修改界面:同样通过控件设计,再输入: using System; using System.Data; using System。Configuration; using System.Collections; using System.Web; using System。Web。Security; using System.Web.UI; using System。Web.UI.WebControls; using System。Web。UI。WebControls。WebParts; using System.Web。UI.HtmlControls; public partial class 通过课程修改 : System。Web。UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void Button1_Click(object sender, EventArgs e) { Response。Redirect("第二个界面.aspx”); } } Class删除界面:同样通过控件设计,再输入: using System; using System。Data; using System。Configuration; using System.Collections; using System。Web; using System.Web.Security; using System.Web.UI; using System。Web。UI。WebControls; using System.Web。UI。WebControls。WebParts; using System.Web。UI.HtmlControls; using System.Data。SqlClient; public partial class Class删除 : System。Web。UI。Page { protected void Page_Load(object sender, EventArgs e) { } protected void BtnDelete_Click(object sender, EventArgs e) { string conStr = ”Data Source=。;Initial Catalog=”; conStr = conStr + ”学生成绩管理系统;Integrated Security=True"; SqlConnection con = new SqlConnection(conStr); con.Open(); string cmdStr = "d- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 课程设计 用到 SQL ASP
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【a199****6536】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【a199****6536】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【a199****6536】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【a199****6536】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文