1、数据库原理课程设计报告题目: 教室管理信息系统 学生姓名:xxx 学 号: xxxx 班 级: 计科xx 院系: 计算机科学与信息学院 专业年级: 计算机科学与技术xx 级 年11月 8日一、需求分析需包括内容为:(1) 问题描述:设计系统简朴描述 系统描述:教室管理信息系统是应用于教室管理系统,可是实现教诲信息化管理,对教室使用进行管理,以便于师生查询管理使用教室。(2)系统功能描述,可画出所设计模块操作流程;并分析所需要存储数据信息。 功能描述: 教室信息存储:涉及教室编号,教室使用时间,教室空闲时间,教室可容纳人数,现时教室使用人,教室使用负责人等教师信息存储:教师编号,教师姓名,性别,
2、所属系别,专家课程,授学时间等学生信息存储:学生编号,学生姓名,性别,所属系别等 教室安排信息存储:教室编号,教室空闲时间,教室使用负责人等 教室使用负责信息存储:负责教室编号,教室使用负责人姓名,教室使用负责人编号等 教室信息存储重要存储教室基本信息和教室安排状况。用于教师和学生查询和申请使用,而教室使用负责人则可以对教室信息查询修改删除。 教师信息存储教师基本状况,学生信息存储学生基本状况。教室安排信息存储教室安排状况,以便教师申请教室,以及教室负责人对教室安排。(3) 有何安全性与完整性方面规定(参照所给出语义规则),对不同顾客有何不同系统使用权限等。学生可以查询和修改学生信息和学生选课
3、信息,以及查询教室使用状况,但学生不能申请教室使用。教师可以查询和修改教师信息和选课信息,以及查询教室使用状况,申请教室使用。教室负责人不能查询教师信息和学生信息以及选课信息,但可以查询和修改教室使用状况,可以安排教室使用。 二、概念构造设计画出系统整体E-R模型;并对模型中所浮现实体及属性等信息加以阐明。教师号学号 姓名姓名性别系别 教师性别学生系别课程名授学时间查询申请容纳人数教室号现时使用人教室教室使用时间教室使用负责人教室空闲时间三、逻辑构造设计(1)模式设计:按系统整体E-R模型,写出关系模式;并运用数据字典加以描述。(如每个关系模式有何属性、属性类型、属性值长度、与否可取空值、与否
4、为主码、有何约束条件等信息) 学生(学号,姓名,性别,系别)教师(教师号,姓名,性别,系别,课程名,授学时间)教室(教室号,教室使用时间,教室空闲时间,容纳人数,现时使用人,教室使用负责人)教室使用负责人(教室负责人编号,教室负责人姓名,教室编号)安排(教师号,教室负责人姓名,教室号,申请状态) 学生表属性名存储代码类型长度备注学号snostring20学生编号(主码)姓名snamestring10学生姓名(不能为空)性别ssexstring2学生性别(男、女)系别sdeptstring20学生所属系别 教师表属性名存储代码类型长度备注教师号tnostring20教师编号(主码)姓名tname
5、string10教师姓名(不能为空)性别tsexstring2教师性别(男、女)系别tdeptstring20教师所属系别授课课程名tcoursestring20教师专家课程名授学时间coursetimestring20教师授学时间 教室表属性名存储代码类型长度备注教室号cnostring20教室编号(主码)教室使用时间usetimestring20教室使用时间教室空闲时间freetimestring20教室空闲时间容纳人数peoplestring10教室可容纳人数(不能为空)教室使用负责人chargestring20负责申请教室使用管理员 教室使用负责人表属性名存储代码类型长度备注教室管理员
6、编号 anostring20教室管理员编号(主码)教室管理员姓名 anamestring20管理员姓名(不能为空)教室编号 cnostring20教室编号 安排教室使用表属性名存储代码类型长度备注教师号tnostring20教师编号(主码之一)教室号cnostring20教室编号(主码之一)教室管理员姓名anamestring20管理员编号(主码之一)申请状态stagestring20与否通过申请(是、否)(2)子模式设计:即针对自己设计模块应用需定义什么样视图表构造;并运用数据字典加以描述。(如每个关系子模式有何属性、属性类型、属性值长度、与否可取空值、与否为主码、有何约束条件等信息)(3)
7、 画出系统功能模块图,并对各功能模块进行简朴简介。 教室查询功能:学生、管理员、教师可以依照教室号查询教室状况。 教师查询功能:学生可以依照教师号查询教师状况,教师可以查询修改教师状况。 教室借用系统:教师可以登录申请使用教室,等待管理员安排教室使用。四、数据库物理设计为了提高在表中搜索元组速度,在实际实现时候应当基于某些属性建立索引。给出所建立索引。(涉及按哪些表中哪些属性按升序还是降序来创立索引及相应T-SQL创立语句)。教师表建立索引,按教师号升序建唯一索引。教室表建立索引,按教室号升序建唯一索引。教室使用负责人表建立索引,按教室管理员号升序建唯一索引。五、数据库设计实现及运营(1)数据
8、库创立T-SQL语句: (2)数据表创立(可同步在创立时定义有关约束)T-SQL语句: (3)视图创立(仅需给出自己设计模块中所用视图)T-SQL语句:(4)各模块中功能实现a) 功能界面(截图); b)功能界面简朴描述;登陆界面可以实现不同顾客涉及教师、学生、管理员登陆,登陆到不同界面。学生登陆到学生界面,可以实现关于教师信息查询和关于教室信息查询。教室登陆到教师界面,可以实现关于教师信息增删查改,以及关于教室申请使用和查询申请成果。管理员登陆到管理员界面,可以实现关于教师信息查询,以及关于教室信息增删查改,和容许教师申请相应教室,或者否定教师申请相应教室。c)T-SQL语句与宿主语言嵌套使
9、用代码段(粘贴); 查询语句: string conString = Data Source=.;Initial Catalog=project;Integrated Security=True; SqlConnection conn = new SqlConnection(conString); conn.Open(); SqlDataAdapter da = new SqlDataAdapter(select tno 教师号,tname 教师名,tsex 性别,tdept 系别,tcourse 所授课程,coursetime 授学时间 from teacher where tno= + T
10、extBox1.Text.Trim() + ,conn); DataSet ds = new DataSet(); da.Fill(ds,teacher); GridView2.DataSource = ds.Tablesteacher; GridView2.DataBind(); conn.Close();删除语句:string conString = Data Source=.;Initial Catalog=project;Integrated Security=True; SqlConnection conn = new SqlConnection(conString); conn.O
11、pen(); SqlCommand caa = new SqlCommand(delete from teacher where tno= +TextBox1.Text.Trim() + ,conn); if (caa.ExecuteNonQuery() = 1) Page.RegisterStartupScript(msg1 , alert( 删除成功! ) ); conn.Close();修改语句: string conString = Data Source=.;Initial Catalog=project;Integrated Security=True; SqlConnection
12、 conn = new SqlConnection(conString); conn.Open(); SqlCommand cbb = new SqlCommand(update teacher set tname= + TextBox2.Text.Trim() + ,tsex= + TextBox3.Text.Trim() + ,tdept= + TextBox4.Text.Trim() + ,tcourse= + TextBox5.Text.Trim() + , coursetime= + TextBox6.Text.Trim() + where tno= + TextBox1.Text.
13、Trim() + ,conn); if (cbb.ExecuteNonQuery() = 1) Page.RegisterStartupScript(msg1 , alert( 修改成功! ) ); else Page.RegisterStartupScript(msg1 , alert( 输入信息有误! ) ); conn.Close();添加语句: SqlCommand cdd = new SqlCommand(insert into teacher (tno,tname,tsex,tdept,tcourse,coursetime) values( +TextBox1.Text.Trim(
14、) + , + TextBox2.Text.Trim() + , + TextBox3.Text.Trim() + , + TextBox4.Text.Trim() + , + TextBox5.Text.Trim() + , + TextBox6.Text.Trim() + ),conn); if (cdd.ExecuteNonQuery() = 1) Page.RegisterStartupScript(msg1 , alert( 添加成功! ) ); else Page.RegisterStartupScript(msg1 , alert( 输入信息有误! ) ); 六、 课程设计心得 在开始做教室管理系统时候,我一方面用C#做了一种本地客户端,遇到不懂地方我就结合课本和自己在网上查询有关知识解决,在理解教师规定后,我又用连接SQL server做了一种web版教室管理系统,重新学习有一定难度,由于在课堂上没学过这个,但是自己在网上理解有关知识学习后,发现诸多问题不像自己始终觉得那么困难,只要努力去做,诸多问题可以自己解决。