数据库课程设计题目滨州学院学生信息管理系统系(院)信息工程系年级 2012 专业计算机科学以技术班级 1 学生姓名迟玉梁学号 ********** 成绩2014年6月摘要:随着社会的进步,尤其是计算机技术与网络的发展,人们对于数据传输,远程控制的实时性要求越来越高,这就使得计算机技术的发展越来越面向网络。
现代学校管理无疑成为网络应用的典型代表,学生在校期间需要进行大量课程的学习,除学校安排的基本课程之外,还要进行部分选修课的学习。
为了达到选课的方便、快捷,高等学校都提供网上选课平台供学生使用。
本次课程设计选做学生选课系统就是建立在面向网络的基础之上,选用Visual Studio 2008 开发工具和SQL Server2005 数据库。
所开发出的系统能够方面学生选课、教师查询和管理员管理。
具有较强的实时性,在面向网络的基础上可以方便在外用户进行各种操作。
关键词:面向网络;数据库;方便目录1 课题的描述及意义 (1)1.1课题目标 (1)1.2目的及意义 (1)2 系统需求分析 (1)2.1系统的详细需求 (1)2.2开发及运行环境 (1)3 数据库概念设计 (2)4 数据库逻辑设计 (2)5 系统界面设计 (4)5.1系统整体界面设计 (4)5.2系统各子界面设计 (4)6 软件测试过程 (10)7 总结 (12)8 附录 (12)滨州学院学生信息管理系统1 课题的描述及意义1.1课题目标实现一个学生选课系统,完成学生选课及查询、教师查询选课及上传学生成绩、管理员管理选课等功能。
1.2目的及意义通过本次课程设计,巩固了对数据库的创建,数据库表的增、删、改、查四大操作的理解与应用。
全面的理解了数据库完整性的内容,熟练了SQL语句的书写,关系图的绘制,E-R图的制作。
对本学期的数据库课程有了综合的应用,把课本中的知识点系统的连在一起,加深了印象。
2 系统需求分析2.1系统的详细需求学生选课系统,在登录模块之后,根据系统用户的不同划分为三个模块:管理员模块、学生模块、教师模块。
(1)管理员通过Id和姓名登陆后可以对整个系统进行全面管理,对学生信息、教师信息、课程信息的增删改查操作。
(2)学生通过学号和姓名登陆后可查看已有的课程信息,并进行选课操作。
(3)教师通过教师号和姓名登陆后可查看课程信息、学生选课情况,修改课程信息和学生课程成绩。
2.2开发及运行环境硬件环境:pc机软件环境:Microsoft Visual Studio 2010、Microsoft SQL Server 20053 数据库概念设计上图是学生选课系统概念模型E/R图,该系统所涉及的实体集有:学生实体集:具有属性学号、姓名、性别、专业、年级、班级。
教师实体集:具有属性教师号、姓名、系别。
管理员实体集:具有属ID、姓名。
一个学生可以选修多门课程,一个教师可以开设多门课程。
所以学生和教师之间是M:N 的联系。
一个管理员可以管理多个学生信息。
所以管理员和学生之间是1:N的联系。
多个管理员可以管理多个教师信息。
所以管理员和教师之间是M:N的联系。
4 数据库逻辑设计学生实体集可转换为关系:Student(Id,Name,Gender,Major,Grade,Class)Id表示学号,Name表示姓名,Gender表示性别,Major表示专业,Grade表示年级,Class表示学生所在班级。
教师实体集可转换为关系:Teacher(TNo,TName,Tsdept)TNo表示教师号,TName表示教师姓名,Tsdept表示教师所在院系。
管理员实体集可转换为关系:Administrator(Id,Name)Id表示管理员号,Name表示管理员姓名。
教师与课程之间可转换为关系:Course(CName,CTNo)CName表示课程名称,CTNo 表示授课教师教师号。
学生和课程之间可转换为关系:Elect(SNo,CName)SNo表示学生学号,CName表示选课程名称。
表4-1学生信息表教师信息表(Teacher):包含教师信息,定义如下:表4-2 教师信息表表4-3 管理员信息表Id 课程号Char(10) 主键Name 课程名数据类型表4-4课程信息表5 系统界面设计5.1系统整体界面设计图5-1 系统登陆界面用户由此界面登录,在单选框中选择学生,那么输入学号和姓名就可以跳转到学生登陆端,进行相应操作;在单选框中选择教师,那么输入教师号和姓名就可跳转到教师登陆端,进行相应操作;在单选框中选择管理员,那么输入管理员号和姓名就可以跳转到管理员特权界面,进行全局管理。
5.2系统各子界面设计(1)学生登录端图5-2 学生登录端图5-3 课程列表展示图5-4 学生选课关键代码:string s = "Server=.;Database=SampleDb;User Id=sa;Password=123456";SqlConnection connection = new SqlConnection(s);SqlCommand command = new SqlCommand();string sql = string.Format("insert into Exam(StudentId,LessonId) values('{0}','{1}')", textBox1.Text, textBox2.Text);command.Connection = connection;mandText = sql;connection.Open();int n = command.ExecuteNonQuery();if (n > 0)MessageBox.Show("添?加ó成é功|");connection.Close();(2)教师登录端图5-5 教师登录端图5-6 修改成绩关键代码:string s = "Server=.;Database=SampleDb;User Id=sa;Password=123456";SqlConnection connection = new SqlConnection(s);SqlCommand command = new SqlCommand();string sql = string.Format("update Exam set Score='{0}' where StudentId='{1}' and LessonId='{2}'", textBox3.Text, textBox1.Text,textBox2.Text);command.Connection = connection;mandText = sql;connection.Open();int n = command.ExecuteNonQuery();if (n > 0)MessageBox.Show("修T改?成é功|");connection.Close();(3)管理员登录端图5-7 管理员登录端图5-8添加学生关键代码:string s = "Server=.;Database=SampleDb;User Id=sa;Password=123456";SqlConnection connection = new SqlConnection(s);SqlCommand command = new SqlCommand();string sql = string.Format("insert into Student values('{0}','{1}','{2}','{3}','{4}','{5}')",textBox1.Text,textBox2.Text,textBox3.Text,textBox4.Text,t extBox5.Text,textBox6.Text);command.Connection = connection;mandText = sql;connection.Open();int n = command.ExecuteNonQuery();if (n > 0)MessageBox.Show("添?加ó成é功|");connection.Close();6 软件测试过程图6-1 学生列表打开系统,进行添加学生信息操作如下图图6-2 添加学生信息点击添加按钮后,提示:图6-3 提示信息再重新打开数据库中的学生信息表查看图6-4 操作后的学生信息表系统正常运行,添加信息成功。
后续对各项功能一一验证不再给出。
7 总结在本次的数据结构课程设计中,我完成了学生选课系统的课程设计。
通过本次数据库课程设计,达到了理论与实践的相结合,加深了对数据库理论知识理解,也进一步掌握了选用的开发语言及开发平台。
在本次课程设计过程中,在需求分析方面,学生选课系统要求界面友好、简明易懂、操作简单。
数据库设计方面,学生选课系统要求有严谨的数据一致性,需主键、外键并用。
最后是代码编写实现,选用面向网络的开发工具机语言,方便了用户进行各种操作。
在代码的编写过程中,用到了数据库的插入、修改和删除语句,在具体的开发环境中使用数据库语言是对编程能力的进一步提高。
通过本次数据库课程设计,我学到了很多书本上学不到的知识以及上课接触不到的东西,也更加认识到网络对工作学习的重要性。
此次课程设计积累的经验对以后项目系统的开发会有很大的帮助。
8 附录(1)源程序所有文件名清单:Form1.csStudentForm.csTeacherForm.csAddStudent.csAddTeacher.csAddCourse.csAddExam.csChangeStudent.csChangeTeacher.csChangeCourse.csChangeExam.csDeleteStudent.csDeleteTeacher.csDeleteCourse.csDeleteExam.csReadStudentList.csReadTeacherList.csReadCourseList.csReadExamList.cs(2)参考资料列表:萨师煊,王珊. 数据库系统概论. 第二版. 北京:高等教育出版社,2000.2。