数据库课程设计——学生成绩管理系统_第1页
数据库课程设计——学生成绩管理系统_第2页
数据库课程设计——学生成绩管理系统_第3页
数据库课程设计——学生成绩管理系统_第4页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据库系统课程设计题目:学生成绩管理系统学生姓名:JM专业:计算机科学与技术班级:学号:二一五年六月一、课程设计题目学生成绩管理系统通过对学校日常教学管理中的课程、选课、学生、班级、教师、成绩等相关内容进行分析,完成具有教师管理、学生管理、成绩管理、课程管理、选课管理、班级管理等相关功能的小型数据库管理应用系统。基本要求:1、完成学生、班级、课程、教师、选课表的维护2、完成成绩表的维护、浏览查找3、按班级、按课程计算平均成绩、最高成绩、最低成绩、及格率4、按不同的条件统计学生课程的平均成绩5、完成权限控制功能6、完成数据备份与恢复功能其中,基础数据包括学生、班级、课程、教师的录入、修改、删除、

2、查询、打印;成绩管理包括选课、成绩信息的录入、删除、修改、查询、打印以及相关统计查询等;用户管理包括用户、 用户组、 权限的录入、 修改、删除、查询、打印以及权限分配、 用户登录等功能;数据备份与恢复包括数据备份、 数据恢复功能, 要求可以备份数据到指定的文件夹、 文件和从指定的文件夹、文件恢复数据到数据库。二、需求分析1)、概括描述:信息需求高校学生的成绩管理工作量大、繁杂 ,人工处理非常困难。学生成绩管理系统借助于计算机强大的处理能力 ,大大减轻了管理人员的工作量 ,并提高了处理的准确性。学生成绩管理系统的开发运用 ,实现了学生成绩管理的自动化 ,不仅把广大教师从繁重的成绩管理工作中解脱出

3、来、把学校从传统的成绩管理模式中解放出来,而且对学生成绩的判断和整理更合理、更公正 ,同时也给教师提供了一个准确、清晰、轻松的成绩管理环境。功能需求1、完成学生、班级、课程、教师、选课表的维护2、完成成绩表的维护、浏览查找3、按班级、按课程计算平均成绩、最高成绩、最低成绩、及格率4、按不同的条件统计学生课程的平均成绩5、完成权限控制功能6、完成数据备份与恢复功能其中,基础数据包括学生、班级、课程、教师的录入、修改、删除、查询、打印;成绩管理包括选课、成绩信息的录入、删除、修改、查询、打印以及相关统计查询等;用户管理包括用户、 用户组、 权限的录入、 修改、删除、查询、打印以及权限分配、 用户登

4、录等功能;数据备份与恢复包括数据备份、 数据恢复功能, 要求可以备份数据到指定的文件夹、 文件和从指定的文件夹、文件恢复数据到数据库。目标用户主要面向学生、教师与系统管理员这三种角色。其中, 学生与教师是系统的主要使用者, 可以通过此系统了解其他同学、教师、以及课程的相关信息。为他们提供可以互相了解联系的平台。管理员主要负责对于系统的维护,同时负责录入各种系统所需要的信息。2)、 DFD(数据流图):3)、 DD(数据字典):1、班级表2、班级名单表3、测试表4、测试成绩表5、教师表6、课程表7、学生表三、数据库概念结构设计E-R图四、数据库逻辑结构设计关系模式列表模式学生学生编号姓名入学年份

5、出生年月籍贯家庭住址联系电话属于班级名单学生编号班级编号包含班级操作日志编号操作时间操作内容班级编号班级人数密码教师编号担任班主任教师编号密码获得教师编号教师姓名课程入职年份任教课程编号出生年月课程名称籍贯教师编号住址参考书目联系电话监考拥有测试成绩测试测试编号测试编号学生编号课程编号成绩测试时间得到教师编号视图班级人员名单表课程人员名单表学生成绩表班级课程成绩统计表SQL语句/*Created: 2015/6/7Modified: 2015/6/9Project:学生成绩管理系统Model: Microsoft SQL Server 2012Company: SOHOAuthor:焦猛Ver

6、sion: 1.1Database: MS SQL Server 2012*/- Create tables section - Table 学生CREATETABLE 学生 ( 学生编号 Varchar ( 10)NOTNULL, 姓名 Varchar ( 20) NOTNULL, 入学年份 IntNOTNULL, 出生年月 DatetimeNULL, 籍贯 Varchar ( 50) NULL, 家庭住址 Varchar ( 100) NULL, 联系电话 Varchar ( 20)NULL)go- Add keys for table学生ALTERTABLE 学生 ADDCONSTRAI

7、NTKey1PRIMARYKEY ( 学生编号 )goALTERTABLE 学生 ADDCONSTRAINT学号 UNIQUE( 学生编号 )go- Table班级CREATETABLE 班级 ( 班级编号 Varchar ( 10)NOTNULL, 班级人数 IntNOTNULL, 教师编号 Varchar ( 10)NOTNULL)go- Add keys for table班级ALTERTABLE 班级 ADDCONSTRAINTKey2PRIMARYKEY ( 班级编号 , 教师编号 )goALTERTABLE 班级 ADDCONSTRAINT班级编号 UNIQUE( 班级编号 )go

8、- Table课程CREATETABLE 课程 ( 课程编号 Varchar ( 10)NOTNULL, 课程名称 Varchar ( 20)NOTNULL, 教师编号 Varchar ( 10)NOTNULL, 参考书目 Varchar ( 200)NULL)go- Add keys for table课程ALTERTABLE 课程 ADDCONSTRAINTKey3PRIMARYKEY ( 课程编号 , 教师编号 )goALTERTABLE 课程 ADDCONSTRAINT课程编号 UNIQUE( 课程编号 )go- Table教师CREATETABLE 教师 ( 教师编号 Varchar

9、 ( 10)NOTNULL, 教师姓名 Varchar ( 20)NOTNULL, 入职年份 Int NOTNULL, 出生年月 DatetimeNULL, 籍贯Varchar ( 50)NULL, 住址Varchar ( 100)NULL, 联系电话 Varchar ( 20)NULL)go- Add keys for table教师ALTERTABLE 教师 ADDCONSTRAINTKey4PRIMARYKEY ( 教师编号 )goALTERTABLE 教师 ADDCONSTRAINT教师编号 UNIQUE( 教师编号 )go- Table测试CREATETABLE 测试 ( 测试编号

10、Varchar ( 10)NOTNULL, 课程编号 Varchar ( 10)NOTNULL, 测试时间 DatetimeNOTNULL, 教师编号 Varchar ( 10)NOTNULL)go- Create indexes for table测试CREATEINDEXIX_ 进行 ON 测试 ( 课程编号 )go- Add keys for table测试ALTERTABLE 测试 ADDCONSTRAINTKey5PRIMARYKEY ( 教师编号 , 测试编号 )goALTERTABLE 测试 ADDCONSTRAINT测试编号 UNIQUE( 测试编号 )go- Table测试成

11、绩CREATETABLE 测试成绩 ( 测试编号 Varchar ( 10)NOTNULL, 学生编号 Varchar ( 10)NOTNULL, 成绩 IntNOTNULL)go- Add keys for table测试成绩ALTERTABLE 测试成绩 ADDCONSTRAINTKey6PRIMARYKEY ( 测试编号 , 学生编号 )go- Table班级名单CREATETABLE 班级名单 ( 学生编号 Varchar ( 10)NOTNULL, 班级编号 Varchar ( 10)NOTNULL)go- Add keys for table班级名单ALTERTABLE 班级名单

12、ADDCONSTRAINTKey7PRIMARYKEY ( 学生编号 , 班级编号 )goALTERTABLE 班级名单 ADDCONSTRAINT学生编号 UNIQUE( 学生编号 )go- Create relationships section -ALTERTABLE 班级名单 ADDCONSTRAINT属于 FOREIGNKEY ( 学生编号 ) REFERENCES学生 ( 学生编号 ) ON UPDATENO ACTIONON DELETENO ACTION goALTERTABLE 班级名单 ADDCONSTRAINT包含 FOREIGNKEY ( 班级编号 ) REFERENC

13、ES班级 ( 班级编号 ) ON UPDATENO ACTIONON DELETENO ACTIONgoALTERTABLE 测试 ADDCONSTRAINT 拥有 FOREIGNKEY ( 课程编号 ) REFERENCES 课程 ( 课程编号 ) ON UPDATENO ACTIONON DELETENOACTIONgoALTERTABLE 测试成绩 ADDCONSTRAINT得到 FOREIGNKEY ( 测试编号 ) REFERENCES测试 ( 测试编号 ) ON UPDATENO ACTIONON DELETENO ACTIONgoALTERTABLE 课程 ADDCONSTRAI

14、NT 任教 FOREIGNKEY ( 教师编号 ) REFERENCES 教师 ( 教师编号 ) ON UPDATENO ACTIONON DELETENOACTIONgoALTERTABLE 班级 ADDCONSTRAINT担任班主任 FOREIGNKEY ( 教师编号 ) REFERENCES教师 ( 教师编号 ) ON UPDATENO ACTIONON DELETENOACTION goALTERTABLE 测试成绩 ADDCONSTRAINT获得 FOREIGNKEY ( 学生编号 ) REFERENCES学生 ( 学生编号 ) ON UPDATENO ACTIONON DELETE

15、NO ACTIONgoALTERTABLE 测试 ADDCONSTRAINT 监考 FOREIGNKEY ( 教师编号 ) REFERENCES 教师 ( 教师编号 ) ON UPDATENO ACTIONON DELETENOACTIONgo五、应用系统功能结构图ClassDiagram类图项目解决方案列表六、各功能模块程序流程图及说明登陆界面用户在此输入用户名与密码, 并选择对应的用户类型, 进行登陆。 登录成功后会根据用户类型对主界面的功能进行相关设置。主功能界面在此界面通过菜单选择功能,在下面的 DataGrid 中显示所需数据,或者在弹出界面设置相关属性进行保存。七、程序源代码及其说

16、明LoginWindow登陆界面设计LoginWindow.xaml<Window x : Class =" 学生成绩管理系统 .LoginWindow"xmlns =""xmlns : x=""Title=" 学生成绩管理系统" Height ="720" Width ="1024" MinHeight ="720"MinWidth ="1024"><Grid ><Grid.Background >

17、<ImageBrush ImageSource ="Assets/BackGround.jpg"/></ Grid.Background ><Grid.RowDefinitions><RowDefinitionHeight ="*"/><RowDefinitionHeight ="2*"/><RowDefinitionHeight ="*"/></ Grid.RowDefinitions><Image Source =&quo

18、t;Assets/Title.png"Height ="70" HorizontalAlignment="Center"VerticalAlignment="Center"Opacity="0.9"><Image.Effect ><DropShadowEffectColor="White"/></ Image.Effect></ Image><Grid Grid.Row ="1"Height="2

19、00"Width ="400" VerticalAlignment="Center"HorizontalAlignment="Center"><Grid.RowDefinitions><RowDefinition/><RowDefinition/><RowDefinition/><RowDefinition/><RowDefinition/></ Grid.RowDefinitions><TextBlockName="T

20、B_Caution"Grid.Row ="0" VerticalAlignment="Center"HorizontalAlignment="Center"FontSize ="16" Foreground ="#FFFB0000" FontFamily="SegoeWP"></TextBlock ><StackPanel Grid.Row ="1" Orientation="Horizontal"Ve

21、rticalAlignment="Center"HorizontalAlignment="Center"><TextBlockFontFamily =" 楷体 " FontSize ="18"> 用户: </ TextBlock ><TextBox Name="TB_ID" Width ="120" UndoLimit ="16"></ TextBox ></ StackPanel ><

22、;StackPanel Grid.Row ="2" Orientation="Horizontal"VerticalAlignment="Center"HorizontalAlignment="Center"><TextBlockFontFamily =" 楷体 " FontSize ="18"> 密码: </ TextBlock ><TextBox Name="TB_Password" Width ="120

23、" UndoLimit ="20"/></ StackPanel ><GroupBox Grid.Row ="3" BorderThickness="0"><StackPanel Orientation="Horizontal"HorizontalAlignment="Center"VerticalAlignment="Center"><RadioButtonName="RB_Student" Fo

24、ntFamily=" 楷体 " FontSize ="15"> 学生</ RadioButton ><RadioButtonName="RB_Teacher" FontFamily=" 楷体 " FontSize ="15"> 教师</ RadioButton ><RadioButtonName="RB_Admin" FontFamily =" 楷体 " FontSize ="15">

25、; 管 理</ RadioButton ></ StackPanel ></ GroupBox><StackPanel Grid.Row ="4" Orientation="Horizontal"HorizontalAlignment="Center"VerticalAlignment="Center"><ButtonName="BT_Login"Width ="100" Height ="30" Cl

26、ipToBounds ="True"Content =" 登 陆" Cursor ="Hand" FontFamily=" 楷体 " FontSize ="18"Click ="BT_Login_Click"></Button ><Button Width ="40" Visibility="Hidden"></ Button ><Button Name="BT_Clear&qu

27、ot;Width ="100" Height ="30" Content =" 重 置 "Cursor ="Hand" FontFamily=" 楷体 " FontSize ="18" Click="BT_Clear_Click"></Button ></ StackPanel ></ Grid ></ Grid ></ Window>登陆界面逻辑处理LoginWindow.xaml.csu

28、sing System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows;using System.Windows.Controls;using System.Windows.Data;using System.Windows.Documents;using System.Windows.Input;using System.Windows.Media;using System.Windows.Media.I

29、maging;using System.Windows.Shapes;namespace 学生成绩管理系统/ <summary>/ LoginWindow.xaml 的交互逻辑/ </summary>publicpartialclassLoginWindow :WindowpublicLoginWindow()InitializeComponent();privatevoid BT_Login_Click(objectsender,RoutedEventArgs e)stringstr ="" ;/1if、检查用户名 (TB_ID.Text =&qu

30、ot;" )TB_ID.Text =return ;" 请输入用户名 " ;/2、检查密码if(TB_Password.Text ="" )TB_Password.Text =return ;" 请输入密码 " ;/3 、检查 RadioButtonswitch(TB_ID.Text.ToCharArray()0)case '0':/ 学生if(RB_Student.IsChecked =str ="Student"true )elseTB_Caution.Text =" 用户类

31、型不符" ;return ;break ;case '1':/ 教师if(RB_Teacher.IsChecked =str ="Teacher" ;true )elseTB_Caution.Text =" 用户类型不符" ;return ;break ;case '2':/ 管理if(RB_Admin.IsChecked =str ="Admin" ;true )elseTB_Caution.Text =" 用户类型不符" ;return ;break ;/4 、检查密码

32、var pwd = (string) SQL_Helper.RunReturnQuerySQL( "select密码from密码where 编号 =" + TB_ID.Text);if(pwd = TB_Password.Text)/ 密码正确/(App)Application.Current).UserID = TB_ID.Text;var window =new MainWindow(TB_ID.Text,str);this .Close();window.Show();elseTB_Caution.Text =" 密码错误 !" ;/ 重置登陆界面

33、所有输入privatevoid BT_Clear_Click(objectsender,RoutedEventArgs e)TB_ID.Text =null ;TB_Password.Text =RB_Admin.IsChecked =RB_Student.IsChecked =RB_Teacher.IsChecked =TB_Caution.Text =null ;false ;false ;false ;null ;MainWindow主界面设计MainWindow.xaml<Window x : Class =" 学生成绩管理系统 .MainWindow"xml

34、ns =""xmlns : x=""Title=" 学生成绩管理系统" Height ="720" Width ="1024" MinHeight ="720"MinWidth ="1024"><Grid ><Grid.Background ><ImageBrush ImageSource ="Assets/BackGround.jpg"/></ Grid.Background >&

35、lt;Grid.RowDefinitions><RowDefinitionName="Welcome" Height ="Auto"/><RowDefinitionName="Log" Height="1*"/><RowDefinitionName="Menu" Height="Auto"/><RowDefinitionHeight ="Auto"/><RowDefinitionName=&quo

36、t;DataGrid" Height ="3*"/><RowDefinitionHeight ="30"/></ Grid.RowDefinitions><Image Grid.Row ="1" Source ="Assets/Title.png"Height ="70"HorizontalAlignment="Center"VerticalAlignment="Center"Opacity ="0.

37、9"><Image.Effect><DropShadowEffect Color ="White"/></ Image.Effect></ Image><MenuGrid.Row ="2" VerticalAlignment="Center"><MenuItem Header =" 系统 "><MenuItem Name="A0" Header =" 备份数据库 " Click=&q

38、uot;MI_BeiFen"/><MenuItem Name="A1" Header =" 恢复数据库 " Click="MI_HuiFu"></ MenuItem><MenuItem Name="A2" Header =" 查看操作日志 " Click="MI_Log"></ MenuItem><Separator ></Separator ><MenuItem Header =&

39、quot; 注销登陆 " Click="MI_Logout"></ MenuItem><MenuItem Header =" 退出系统 " Click="MI_Exit"></MenuItem><MenuItem Header =" 修改密码 " Click="MI_ChangePwd"></MenuItem></ MenuItem><MenuItem Header =" 学生 "&

40、gt;<MenuItem Header =" 查看学生信息 " Click="MI_Stu_Info"></MenuItem><MenuItem Header =" 新增学生 " Name="A3"Click ="MI_Manage_Stu"></ MenuItem><MenuItem Header =" 修改学生 " Name="A4"Click ="MI_Manage_Stu"&

41、gt;</ MenuItem><MenuItem Header =" 删除学生 " Name="A5"Click ="MI_Manage_Stu"></ MenuItem></ MenuItem><MenuItem Header =" 教师 "><MenuItem Header =" 查看教师信息 " Click="MI_Tea_Info"></MenuItem><MenuItem He

42、ader =" 新增教师 " Name="A6"Click ="MI_Manage_Tea"></ MenuItem><MenuItem Header =" 修改教师 " Name="A7"Click ="MI_Manage_Tea"></ MenuItem><MenuItem Header =" 删除教师 " Name="A8"Click ="MI_Manage_Tea&quo

43、t;></ MenuItem></ MenuItem><MenuItem Header =" 班级 "><MenuItem Header =" 查看班级名单 " Click="MI_Class_StuInfo"></MenuItem><Separator ></Separator ><MenuItem Header =" 分配学生至班级 " Name="A12"Click ="MI_Mana

44、ge_Class"></ MenuItem><MenuItem Header =" 查看所有班级信息 "Click ="MI_Class_AllInfo"></MenuItem><MenuItem Header =" 新增班级 " Name="A9"Click ="MI_Manage_Class"></ MenuItem><MenuItem Header =" 修改班级 " Name="

45、;A10"Click ="MI_Manage_Class"></ MenuItem><MenuItem Header =" 删除班级 " Name="A11"Click ="MI_Manage_Class"></ MenuItem></ MenuItem><MenuItem Header =" 课程 "><MenuItem Header =" 查看课程信息 " Click="MI_Co

46、urse_Info"></MenuItem><Separator ></Separator ><MenuItem Header =" 新增学生选课 " Name="A13"Click ="MI_Manage_Course"></ MenuItem><MenuItem Header =" 新增课程 " Name="A14"Click ="MI_Manage_Course"></ Men

47、uItem><MenuItem Header =" 修改课程 " Name="A15"Click ="MI_Manage_Course"></ MenuItem><MenuItem Header =" 删除课程 " Name="A16"Click ="MI_Manage_Course"></ MenuItem></ MenuItem><MenuItem Header =" 成绩 "&g

48、t;<MenuItem Header =" 查看学生成绩 " Click="MI_Stu_CJ"></ MenuItem><MenuItem Header =" 统计班级成绩 " Click="MI_Class_CJ"></ MenuItem><MenuItem Header =" 统计课程成绩 " Click="MI_Course_CJ"></ MenuItem><MenuItem Header

49、=" 成绩录入 " Name="A17"Click ="MI_Insert_CJ"></MenuItem></ MenuItem></ Menu><TextBlockGrid.Row ="3" FontSize ="20" Name="TB_DG_Name"VerticalAlignment="Center"HorizontalAlignment="Center"></Text

50、Block ><DataGrid Grid.Row ="4" Name="DG" ItemsSource =" Bindingtable"></ DataGrid ></ Grid ></ Window>主界面逻辑设计MainWindow.xaml.csusing Microsoft.Win32;using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.T

51、ext;using System.Threading.Tasks;using System.Windows;using System.Windows.Controls;using System.Windows.Data;using System.Windows.Documents;using System.Windows.Input;using System.Windows.Media;using System.Windows.Media.Imaging;using System.Windows.Shapes;using学生成绩管理系统.ManageWindows;namespace 学生成绩管理系统/ <s

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论