学籍管理系统实验报告终版

合集下载

学籍管理系统实验报告(C#语言)

学籍管理系统实验报告(C#语言)
usingSystem;
usingSystem.Data.SqlClient;
usingSystem.Collections.Generic;
ponentModel;
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Text;
2、实验现象、数据及结果
(1).打开sql2005,新建数据库a,新建一个表“学籍”。
(2).新建一个Windows应用程序,建立表
(3).给各个表添加相应代码如下:
usingSystem;
usingSystem.Collections.Generic;
ponentModel;
DataSetthisDataSet =newDataSet();
thisAdapter.Fill(thisDataSet,"学籍");
DataColumn[] keys =newDataColumn[1];
keys[0] = thisDataSet.Tables["学籍"].Columns["StuNo"];
MessageBox.Show("please complete the information");
else
{
SqlConnectionthisConnection =newSqlConnection(@"Server=00b758efb68a400;Integrated Security=sspi;"+"Database=a");
thisDataSet.Tables["学籍"].PrimaryKey = keys;

学籍系统实验报告

学籍系统实验报告

学籍系统实验报告学籍系统实验报告一、引言学籍系统是现代教育管理中不可或缺的一部分。

本次实验旨在探索学籍系统的设计与应用,分析其在教育管理中的作用和影响。

二、实验目的1. 了解学籍系统的基本概念和功能;2. 掌握学籍系统的设计和开发方法;3. 分析学籍系统在教育管理中的优势和挑战。

三、实验过程1. 研究学籍系统的基本概念和功能:学籍系统是一种用于学生信息管理的软件系统,包括学生的个人信息、学业记录、考试成绩等。

通过学籍系统,学校可以更好地管理学生信息,提高教育质量和效率。

2. 设计学籍系统的数据结构和功能模块:根据实际需求,我们设计了学籍系统的数据结构,包括学生信息、课程信息、成绩信息等。

同时,我们还设计了学籍系统的功能模块,包括学生信息管理、课程管理、成绩管理等。

3. 开发学籍系统的原型:基于设计的数据结构和功能模块,我们使用编程语言进行学籍系统的开发。

通过编码和测试,我们成功实现了学籍系统的基本功能,并进行了优化和改进。

4. 实验结果分析:通过对学籍系统的实际应用和测试,我们发现学籍系统在教育管理中具有以下优势:- 提高信息管理效率:学籍系统可以快速、准确地存储和检索学生信息,提高学校的信息管理效率。

- 优化教学过程:学籍系统可以帮助教师更好地了解学生的学习情况和成绩表现,从而针对性地进行教学和辅导。

- 促进家校沟通:学籍系统可以让家长及时了解孩子的学习情况,与学校保持良好的沟通和合作。

- 提供决策支持:学籍系统可以为学校领导提供数据支持,帮助他们做出更准确、科学的决策。

然而,学籍系统在实际应用中也存在一些挑战:- 数据安全问题:学籍系统涉及大量学生信息,数据安全是一个重要的考虑因素,需要采取有效的安全措施。

- 技术要求高:学籍系统的开发和维护需要一定的技术水平和资源投入,对学校来说是一项挑战。

- 用户培训和接受度:学籍系统需要教师、学生和家长共同使用,需要进行培训和推广工作,提高用户的接受度。

学生学籍管理系统总结6篇

学生学籍管理系统总结6篇

学生学籍管理系统总结6篇第1篇示例:学生学籍管理系统是一个针对学生信息管理的系统,在教育行业具有非常重要的作用。

学籍管理系统可以帮助学校对学生的信息进行统一管理,包括学生的个人信息、课程信息、成绩信息、考勤信息等。

通过学籍管理系统,学校可以更加高效地管理学生信息,提高学校管理水平,提升教学质量,保障学生的学习权益,实现信息的共享和互通。

一、学生学籍管理系统的功能1、学生信息管理:学籍管理系统可以实现学生的基本信息管理,包括学生的姓名、性别、班级、年级、家庭住址等信息的录入、查询和修改。

3、成绩管理:学籍管理系统可以实现学生成绩的录入、查询、统计和打印,包括期中成绩、期末成绩、平时成绩等。

5、学籍信息统计:学籍管理系统可以实现学籍信息的统计分析,包括学生基本信息、课程信息、成绩信息、考勤信息的统计和分析。

1、提高管理效率:学生学籍管理系统可以实现学生信息的集中管理,提高管理效率,减少人力成本。

2、提升教学质量:学生学籍管理系统可以实现成绩的统计和分析,帮助教师了解学生的学习情况,及时发现问题,提升教学质量。

3、保障学生权益:学生学籍管理系统可以记录学生的考勤情况,保障学生的学习权益,及时发现学生缺勤情况,进行干预。

4、实现信息共享:学生学籍管理系统可以实现学籍信息的共享和互通,方便教师、学生、家长等多方面的查询和反馈。

5、信息安全性高:学生学籍管理系统可以实现学籍信息的加密和权限管理,保障学籍信息的安全性。

1、智能化:学生学籍管理系统将越来越智能化,实现更多的自动化功能,包括智能选课、智能排课、智能考勤等。

2、大数据化:学生学籍管理系统将越来越大数据化,实现更加全面的统计和分析功能,帮助学校更好地了解学生的学习情况。

4、移动化:学生学籍管理系统将会越来越移动化,实现更加便捷的手机端操作,方便学校和相关人员随时随地查询和管理学籍信息。

1、学生学籍管理系统的建设需要充分考虑学校的实际情况,结合学校的规模、教学水平、信息化水平等,选择合适的学籍管理系统。

学生学籍管理系统实训报告(完整版)

学生学籍管理系统实训报告(完整版)

目录摘要 (1)第1章前言 (2)1.1系统前景 (2)1.2 开发环境简介 (2)1.3系统主要功能 (2)第2章需求分析 (3)2.1 引言 (3)2.2 用户需求 (3)2.3 划分功能模块 (3)2.4 开发环境 (4)2.5 数据表 (4)第3章概念设计 (6)3.1目的 (6)3.2数据流图 (6)3.3 系统E-R图 (7)第4章逻辑和物理设计 (10)4.1 关系模型 (10)4.2数据模型的优化 (10)4.3 建立基本表 (11)4.4 建立视图 (14)4.5 系统功能模块设计 (14)4.6 系统功能模块实现 (14)第五章系统测试 (20)5.1 测试的研究与选择 (20)5.2测试环境 (20)5.3功能实现结果测试 (20)第六章实验总结 (23)摘要随着计算机技术的逐渐发展,计算机在教育系统中的应用得到了巨大的发展。

教务管理正在逐步迈向管理信息现代化。

但是我国的教务管理信息化水平还处在初级阶段,主要表现在对学生的交费管理、学生的档案管理还是采用原有的人工管理方式。

学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长。

面对庞大的信息量,这时的人工管理几乎无法实现,在这种情况下用数据库进行管理变的尤为必要,这可以发挥计算机的优势,就需要有教务管理系统来提高学生管理工作的效率.通过这样的系统,可以做到信息的规范管理,科学统计和快速的查询,从而减少管理方面的工作量和减少人为的错误。

关键词:数据库教务管理系统计算机第1章前言1.1系统前景随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。

对于学校而言,实现学生学籍管理的信息化就显得尤为重要,因此,开发一套能够为用户提供充足的信息和快捷的查询手段的学生信息管理系统,将是非常必要的。

作为计算机应用的一部分,使用计算机对学生档案进行管理,有着手工管理所无法比拟的优点,如:检索迅速、查找方便、可靠性高、存储量大、保密性好等。

学生学籍档案管理系统实训报告

学生学籍档案管理系统实训报告

C#课程实训报告项目组:学生学籍档案管理系统专业:计算机软件技术学院:软件职业技术学院指导教师:王大亮闻喆实训时间:2013年6月24日-2013年7月12日软件职业技术学院CCUTSOFT学生学籍档案管理系统系统第一部分团队构成及分工第二部分系统开发进度计划第三部分需求分析第四部分概要设计第五部分详细设计第六部分系统实现第七部分测试第八部分代码清单第九部分参考文献第十部分实训总结目录1.团队构成及分工 (1)2. 系统开发进度计划 (2)3. 需求分析 (3)导言 (3)3.1.1目的 (3)3.1.2背景 (3)3.1.3定义及缩写 (3)3.1.4参考文献 (3)系统定义 (4)3.2.1项目来源及背景 (4)3.2.2用户特点 (4)3.2.3项目目标 (4)3.2.4应用环境 (4)功能需求 (4)3.3.1角色定义 (5)3.3.2系统用例图 (5)3.3.3用例描述 (2)性能需求 (4)3.4.1界面需求 (4)3.4.2响应时间需求 (4)3.4.3可靠性需求 (4)3.4.4开发性需求 (4)3.4.5可扩展性需求 (4)3.4.6系统安全需求 (5)4.概要设计 (1)导言 (1)4.1.1目的 (1)4.1.2定义及缩写 (1)4.1.3参考文献 (1)功能设计 (1)4.2.1功能层次设计 (1)4.2.2登录模块 (1)4.2.3用户操作模块 (1)界面流程 (1)数据设计 (1)4.4.1 数据概念结构设计 (1)4.4.2数据逻辑结构设计 (2)4.4.3数据物理结构设计 (4)5.详细设计 (1)导言 (1)5.1.1目的 (1)5.1.2定义及缩写 (1)5.1.3参考文献 (1)界面设计 (1)5.2.1未登录模块界面设计 (1)5.2.2登录模块界面设计 (2)5.2.3角色处理模块详细设计 (2)功能详细设计 (3)5.3.1模块详细设计 (3)6. 系统实现 (1)导言 (1)6.1.1目的 (1)6.1.2缩写及定义 (1)6.1.3参考文献 (1)编码格式规范 (1)6.2.1缩进规则 (1)6.2.2断行规则 (1)命名规范 (2)6.3.1控件 (2)6.3.2类/接口 (2)6.3.3方法 (2)6.3.4变量/常量 (2)注释规范 (2)添加用户测试 (4)学生信息录入测试 (6)查询测试 (7)8.代码清单 (9)9.参考文献 (1)10.实训总结 (1)1.团队构成及分工职能成员项目角色任务分工成绩签字组长王浩然总设计需求分析与实现组员黄树言成员数据管理刘鑫成员界面设计张宝岩参谋测试逄金桥成员测试李浩男成员测试指导教师签字:年月日2. 系统开发进度计划序号任务名称开始时间完成时间持续时间1 需求分析3天2 程序设计1天3 程序开发10天4 程序测试修改2天5 文档报告3天3. 需求分析导言3.1.1 目的为了方便学生档案管理人员的管理,减少人力资源的浪费,开发了这个软件以便管理人员提高工作效率和工作人员工作方便快捷,这个项目的小组制作一方面提高我们团队合作的能力,另一方面可以提高我们对于C#的学习能力,从而在以后的学习生活以至于工作之中有一小点工作的能力与经验.本文档的预期读者是:开发人员:王浩然刘鑫张宝岩黄树言李浩男逄金桥项目管理人员:王浩然刘鑫等测试人员:王浩然黄树言等3.1.2 背景系统在vs与数据库软件的支持下完成并运行。

C程实验报告(学籍管理系统)

C程实验报告(学籍管理系统)

实验题目:使用 C 编程实现一个学籍管理系统1。

程序设计与分析1.1程序实现的功能主要用于学籍管理,实现对于多个学生信息(姓名、班级、学号、成绩)的输入、删除、查找、排序和输出,达到基本的学籍管理的功能。

同时,在学生数量过多或者在一定范围内的不正常的操作时,给出警告。

1.2采用的数据类型采用结构体“Result”来存储每个学生的信息,其中Id为字符型数组,班级(cla)为整型,姓名(nam)为字符型数组,三门功课的分数(s)为浮点型数组,总分(sum)为浮点型。

鉴于学生数和课程数在整个程序中是恒定的,为程序的可扩充性,将学生数和课程数设为符号常量.1.3核心算法存储:采用结构体,储存信息。

输入:设一个暂时的结构数组元素,再将其导入正式的结构数组中,使得程序方便修改,并且方便输出。

删除:首先用string。

h中的strcmp完成查找。

调用deleteRecord()函数,以完成对于信息的删除,即将后面是的信息覆盖代替选中的学生的信息,期间调用cpyRecord()函数完成覆盖。

查找:启用flag做标记,已达到若输入的信息难以匹配,警告.用string。

h中的strcmp 和strcpy完成查找,用printRecord()函数输出。

排序:将比较与交换分开,用dicSort()函数完成比较,再调用exchange()函数完成交换,期间用选择法进行排序。

输出:再次调用printRecord()函数,输出所要值。

自定义函数的各项功能:void input(int x):根据输入的选择数字进行不同的调用void informationInput():将信息导入暂存结构体数组void put2result(struct Result tmp):将暂存数组导入正式数组void deleteInformation():进入删除的过程,完成比较void deleteRecord(int iRecord):完成需要改变位置的数组的循环void cpyRecord(int dst, int src):完成相应两个数组的覆盖void selectInformation():完成转换和比较void orderInformation():完成相应数组的循环int dicSort(int dst, int src):比较int exchange(int x, int y):交换void printRecord(int i):暂时输出void printInformation():最终输出2。

学生学籍管理系统总结7篇

学生学籍管理系统总结7篇篇1一、引言随着信息技术的快速发展,学生学籍管理工作日益繁重。

为了提高管理效率,我校引入了学籍管理系统,实现了对学生信息的全面管理。

本文旨在对学籍管理系统的实施情况进行总结,以期为提高管理水平提供参考。

二、系统概述学生学籍管理系统是一款集学生信息管理、成绩管理、课程管理等功能于一体的软件系统。

本系统采用了云计算技术,可实现数据共享与实时更新,提高了数据处理效率和准确性。

同时,系统界面简洁明了,操作便捷,大大减轻了工作人员的工作负担。

三、系统实施情况1. 系统建设在系统的建设过程中,我们组织专业团队进行需求分析、设计、开发、测试等工作,确保系统的稳定性和安全性。

同时,我们与第三方数据库进行了有效对接,实现了学生信息的实时更新。

2. 系统推广与应用系统上线后,我们通过培训、讲座等方式,积极推广系统应用,提高师生对系统的认知度和使用率。

目前,系统已广泛应用于学生信息管理、成绩管理、课程管理等方面,取得了显著成效。

3. 系统效果(1)提高管理效率:通过系统的应用,我们实现了对学生信息的快速查询、更新、分析等功能,提高了管理效率。

(2)数据准确性:系统减少了人为操作,降低了数据错误率,提高了数据的准确性。

(3)实时更新:通过与第三方数据库对接,实现了学生信息的实时更新,确保了学生信息的及时性。

(4)辅助决策:系统提供了数据分析功能,为学校的决策提供了有力支持。

四、问题与建议1. 问题(1)部分教师对新系统的操作不够熟练,需要进一步加强培训。

(2)部分功能需要进一步完善,以满足不同部门的需求。

(3)系统安全性需进一步加强,确保数据的安全。

2. 建议(1)组织定期的培训活动,提高教师对系统的操作水平。

(2)根据各部门的需求,对系统进行进一步优化和升级。

(3)加强系统的安全防护措施,确保数据的安全性和隐私性。

五、结论学生学籍管理系统的实施,大大提高了学生信息管理的效率,降低了数据错误率,为学校的决策提供了有力支持。

c#学生管理系统

学籍管理系统设计实验报告班级:小组成员:组长:实验名称:学籍管理系统日期:一、实验目的及要求编写完成学生学籍信息的管理,如添加,删除,更改,查询等功能.要求在c#编写,用sql server作为数据库进行该系统的设计,包含系统管理,专业设置,班级信息管理,学生信息管理,课程信息管理,成绩信息管理等功能.二、实验环境WindowsXP操作系统, 2005,sql server 2000三、实验源程序及关键代码解释下面为该程序的主要代码和界面:using System;using System.Collections.Generic;using ponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Data.SqlClient;namespace学生学籍管理系统{public partial class登录页 : Form{public登录页(){InitializeComponent();}private void button2_Click(object sender, EventArgs e){this.Close();}private void button1_Click(object sender, EventArgs e){SqlConnection conn = new SqlConnection("server=(local);database=学生管理系统;Integrated Security=SSPI");conn.Open();if (textBox1.Text.Trim() == "" || textBox2.Text.Trim() == "")MessageBox.Show("请输入账号/密码", "提示");else{SqlCommand com = new SqlCommand("select * from admin where ID='" + textBox1.Text.Trim() + "' and password='" + textBox2.Text.Trim() + "'", conn);if (com.ExecuteScalar() != null){首页 f1 = new首页();f1.ShowDialog();textBox1.Clear();textBox2.Clear();}else{MessageBox.Show("账号或密码有误", "错误");textBox1.Clear();textBox2.Clear();}}}private void textBox2_TextChanged(object sender, EventArgs e){}}}using System;using System.Collections.Generic;using ponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace学生学籍管理系统{public partial class首页 : Form{public首页(){InitializeComponent();}private void首页_Load(object sender, EventArgs e) {timer1.Interval = 1000;timer1.Enabled = true;}private void timer1_Tick(object sender, EventArgs e) {label1.Text = DateTime.Now.ToString();}private void更改密码ToolStripMenuItem_Click(object sender, EventArgs e) {修改密码 f2 = new修改密码();f2.ShowDialog();}private void注销ToolStripMenuItem_Click(object sender, EventArgs e){this.Close();}private void退出ToolStripMenuItem_Click(object sender, EventArgs e){Application.Exit();}private void专业浏览ToolStripMenuItem_Click(object sender, EventArgs e) {专业浏览 f4 = new专业浏览();f4.ShowDialog();}private void添加班级ToolStripMenuItem_Click(object sender, EventArgs e) {添加班级 f5 = new添加班级();f5.ShowDialog();}private void删除班级ToolStripMenuItem_Click(object sender, EventArgs e) {删除班级 f6 = new删除班级();f6.ShowDialog();}private void班级浏览ToolStripMenuItem_Click(object sender, EventArgs e) {班级浏览 f7 = new班级浏览();f7.ShowDialog();}private void添加学生信息ToolStripMenuItem_Click(object sender, EventArgs e){添加学生信息 f8 = new添加学生信息();f8.ShowDialog();}private void修改学生信息ToolStripMenuItem_Click(object sender, EventArgs e){修改学生信息 f9 = new修改学生信息();f9.ShowDialog();}private void添加课程ToolStripMenuItem_Click(object sender, EventArgs e){添加课程 f10 = new添加课程();f10.ShowDialog();}private void课程信息浏览ToolStripMenuItem_Click(object sender, EventArgs e){课程信息查询 f11 = new课程信息查询();f11.ShowDialog();}private void添加学生成绩信息ToolStripMenuItem_Click(object sender, EventArgs e) {添加学生成绩 f12 = new添加学生成绩();f12.ShowDialog();}private void学生ToolStripMenuItem1_Click(object sender, EventArgs e){学生成绩查询 f13 = new学生成绩查询();f13.ShowDialog();}private void班级成绩查询ToolStripMenuItem_Click(object sender, EventArgs e){班级成绩查询 f14 = new班级成绩查询();f14.ShowDialog();}private void学生ToolStripMenuItem_Click(object sender, EventArgs e){学生信息浏览 f15 = new学生信息浏览();f15.ShowDialog();}private void删除学生信息ToolStripMenuItem_Click(object sender, EventArgs e) {删除学生信息 f16 = new删除学生信息();f16.ShowDialog();}}}using System;using System.Collections.Generic;using ponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Data.SqlClient;namespace学生学籍管理系统{public partial class添加班级 : Form{public添加班级(){InitializeComponent();}private void添加班级_Load(object sender, EventArgs e){SqlConnection conn = new SqlConnection("server=(local);database=学生管理系统;Integrated Security=SSPI");conn.Open();SqlDataAdapter adp1 = new SqlDataAdapter("select distinct sd from sdept ", conn);DataSet ds1 = new DataSet();adp1.Fill(ds1, "s1");comboBox1.DataSource = ds1.Tables["s1"].DefaultView;comboBox1.DisplayMember = "sd";comboBox1.ValueMember = "sd";}private void comboBox2_SelectedIndexChanged(object sender, EventArgs e){}private void comboBox1_SelectedIndexChanged(object sender, EventArgs e){if (comboBox1.Text.Trim() != ""){SqlConnection conn = new SqlConnection("server=(local);database=学生管理系统;Integrated Security=SSPI");conn.Open();SqlDataAdapter adp2 = new SqlDataAdapter("select distinct zhuanye from sdept where sd='" + comboBox1.Text.Trim() + "'", conn);DataSet ds2 = new DataSet();adp2.Fill(ds2, "s2");comboBox2.DataSource = ds2.Tables["s2"].DefaultView;comboBox2.DisplayMember = "zhuanye";comboBox2.ValueMember = "zhuanye";}}private void button2_Click(object sender, EventArgs e){this.Close();}private void button1_Click(object sender, EventArgs e){SqlConnection conn = new SqlConnection("server=(local);database=学生管理系统;Integrated Security=SSPI");conn.Open();SqlCommand cmd = new SqlCommand("select * from sdept", conn);if (textBox1.Text.Trim() != null){SqlCommand cmd1 = new SqlCommand("select * from sdept where zhuanye='" + comboBox2.Text.Trim() + "' and sd='" + comboBox1.Text.Trim() + "'and class='" +textBox1.Text.Trim() + "'", conn);if (cmd1.ExecuteScalar() == null){String sql;sql = "insert into sdept (zhuanye,sd,class) values ('" +comboBox2.Text.Trim() + "','" + comboBox1.Text.Trim() + "','" + textBox1.Text.Trim() + "')"; mandText = sql;cmd.ExecuteNonQuery();MessageBox.Show("添加成功", "提示");textBox1.Clear();}else{MessageBox.Show("此班级已存在", "提示");}}else{MessageBox.Show("请输入所加班级", "提示");}}}}using System;using System.Collections.Generic;using ponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Data.SqlClient;namespace学生学籍管理系统{public partial class添加学生信息 : Form{public添加学生信息(){InitializeComponent();}private void button2_Click(object sender, EventArgs e) {this.Close();}private void button1_Click(object sender, EventArgs e){if(textBox1.Text.Trim() == ""|| textBox2.Text.Trim() == ""|| textBox3.Text.Trim() == "" || textBox4.Text.Trim() == "" || textBox5.Text.Trim() == "" || textBox6.Text.Trim() == "" || comboBox1.Text.Trim() == "" || comboBox2.Text.Trim() == "" || comboBox3.Text.Trim() == "" || comboBox4.Text.Trim() == ""){MessageBox.Show("请完整填写学生信息", "提示");textBox1.Clear();textBox2.Clear();textBox3.Clear();textBox4.Clear();textBox5.Clear();textBox6.Clear();}else{SqlConnection conn = new SqlConnection("server=(local);database=学生管理系统;Integrated Security=SSPI");conn.Open();SqlCommand cmd = new SqlCommand("select * from student where ID='" +textBox1.Text.Trim() + "'", conn);if (cmd .ExecuteScalar ()==null){String sql;sql="insert into student (ID,name,sex,age,mz,phone,sd,zhuanye,class,year1) values ('"+textBox1 .Text .Trim ()+"','"+textBox2 .Text .Trim ()+"','" + comboBox1.Text.Trim() + "','"+textBox3 .Text .Trim ()+"','"+textBox4 .Text .Trim ()+"','"+textBox5.Text .Trim ()+"','" + comboBox2.Text.Trim() + "','"+ comboBox3.Text.Trim() + "','"+ comboBox4.Text.Trim() + "','" + textBox6.Text.Trim() + "')";mandText = sql;cmd.ExecuteNonQuery();MessageBox.Show("添加成功", "提示");textBox1.Clear();textBox2.Clear();textBox3.Clear();textBox4.Clear();textBox5.Clear();textBox6.Clear();}else{MessageBox .Show ("此学号已存在","错误");textBox1.Clear();textBox2.Clear();textBox3.Clear();textBox4.Clear();textBox5.Clear();textBox6.Clear();}}}private void添加学生信息_Load(object sender, EventArgs e){SqlConnection conn = new SqlConnection("server=(local);database=学生管理系统;Integrated Security=SSPI");conn.Open();SqlDataAdapter adp1 = new SqlDataAdapter("select distinct sd from sdept ", conn);DataSet ds1 = new DataSet();adp1.Fill(ds1, "s1");comboBox2.DataSource = ds1.Tables["s1"].DefaultView;comboBox2.DisplayMember = "sd";comboBox2.ValueMember = "sd";}private void comboBox2_SelectedIndexChanged(object sender, EventArgs e){if (comboBox2.Text.Trim() != ""){SqlConnection conn = new SqlConnection("server=(local);database=学生管理系统;Integrated Security=SSPI");conn.Open();SqlDataAdapter adp2 = new SqlDataAdapter("select distinct zhuanye from sdept where sd='" + comboBox2.Text.Trim() + "'", conn);DataSet ds2 = new DataSet();adp2.Fill(ds2, "s2");comboBox3.DataSource = ds2.Tables["s2"].DefaultView;comboBox3.DisplayMember = "zhuanye";comboBox3.ValueMember = "zhuanye";}}private void comboBox3_SelectedIndexChanged(object sender, EventArgs e){if (comboBox3.Text.Trim() != ""){SqlConnection conn = new SqlConnection("server=(local);database=学生管理系统;Integrated Security=SSPI");conn.Open();SqlDataAdapter adp3 = new SqlDataAdapter("select distinct class from sdept where sd='" + comboBox2.Text.Trim() + "'and zhuanye='" + comboBox3.Text.Trim() + "'", conn);DataSet ds3 = new DataSet();adp3.Fill(ds3, "s3");comboBox4.DataSource = ds3.Tables["s3"].DefaultView;comboBox4.DisplayMember = "class";comboBox4.ValueMember = "class";}}}}using System;using System.Collections.Generic;using ponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Data .SqlClient ;namespace学生学籍管理系统{public partial class添加学生成绩 : Form{public添加学生成绩(){InitializeComponent();}private void button2_Click(object sender, EventArgs e){this.Close();}private void button1_Click(object sender, EventArgs e){if(textBox1.Text.Trim() == ""|| textBox2.Text.Trim() == ""|| textBox3.Text.Trim() == ""){MessageBox.Show("请完整填写信息", "提示");textBox1.Clear();textBox2.Clear();textBox3.Clear();}else{SqlConnection conn = new SqlConnection("server=(local);database=学生管理系统;Integrated Security=SSPI");conn.Open();SqlCommand com = new SqlCommand("select * from student where ID='" +textBox1.Text.Trim() + "'", conn);if (com.ExecuteScalar() != null){SqlCommand com1 = new SqlCommand("select * from course where num='" + textBox2.Text.Trim() + "'", conn);if (com1.ExecuteScalar() != null){String sql;sql = "insert into chengji (sno,cno,chengji) values ('" +textBox1.Text.Trim() + "','" + textBox2.Text.Trim() + "','" + textBox3.Text.Trim() + "')"; mandText = sql;com1.ExecuteNonQuery();MessageBox.Show("添加成功", "提示");textBox1.Clear();textBox2.Clear();textBox3.Clear();}else{MessageBox.Show("此课号并不存在", "错误"); textBox1.Clear();textBox2.Clear();textBox3.Clear();}}else{MessageBox.Show("此学号并不存在", "错误");textBox1.Clear();textBox2.Clear();textBox3.Clear();}}}}}using System;using System.Collections.Generic;using ponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Data.SqlClient;namespace学生学籍管理系统{public partial class修改学生信息 : Form{public修改学生信息(){InitializeComponent();}private void修改学生信息_Load(object sender, EventArgs e){textBox4.Hide();textBox2.Hide();textBox3.Hide();comboBox1.Hide();comboBox2.Hide();comboBox3.Hide();SqlConnection conn = new SqlConnection("server=(local);database=学生管理系统;Integrated Security=SSPI");conn.Open();SqlDataAdapter adp1 = new SqlDataAdapter("select distinct sd from sdept ", conn);DataSet ds1 = new DataSet();adp1.Fill(ds1, "s1");comboBox1.DataSource = ds1.Tables["s1"].DefaultView;comboBox1.DisplayMember = "sd";comboBox1.ValueMember = "sd";}private void comboBox1_SelectedIndexChanged(object sender, EventArgs e){if (comboBox1.Text.Trim() != ""){SqlConnection conn = new SqlConnection("server=(local);database=学生管理系统;Integrated Security=SSPI");conn.Open();SqlDataAdapter adp2 = new SqlDataAdapter("select distinct zhuanye from sdept where sd='" + comboBox1.Text.Trim() + "'", conn);DataSet ds2 = new DataSet();adp2.Fill(ds2, "s2");comboBox2.DataSource = ds2.Tables["s2"].DefaultView;comboBox2.DisplayMember = "zhuanye";comboBox2.ValueMember = "zhuanye";}}private void comboBox3_SelectedIndexChanged(object sender, EventArgs e){}private void comboBox2_SelectedIndexChanged(object sender, EventArgs e){if (comboBox2.Text.Trim() != ""){SqlConnection conn = new SqlConnection("server=(local);database=学生管理系统;Integrated Security=SSPI");conn.Open();SqlDataAdapter adp3 = new SqlDataAdapter("select distinct class from sdept where sd='" + comboBox1.Text.Trim() + "'and zhuanye='" + comboBox2.Text.Trim() + "'", conn);DataSet ds3 = new DataSet();adp3.Fill(ds3, "s3");comboBox3.DataSource = ds3.Tables["s3"].DefaultView;comboBox3.DisplayMember = "class";comboBox3.ValueMember = "class";}}private void checkBox1_CheckedChanged(object sender, EventArgs e){textBox2.Visible = checkBox1.Checked;}private void checkBox2_CheckedChanged(object sender, EventArgs e){textBox3.Visible = checkBox2.Checked;}private void textBox4_TextChanged(object sender, EventArgs e){}private void checkBox4_CheckedChanged(object sender, EventArgs e){comboBox1.Visible = checkBox4.Checked;}private void checkBox3_CheckedChanged(object sender, EventArgs e){textBox4.Visible = checkBox3.Checked;}private void checkBox5_CheckedChanged(object sender, EventArgs e){comboBox2.Visible = checkBox5.Checked;}private void checkBox6_CheckedChanged(object sender, EventArgs e){comboBox3.Visible = checkBox6.Checked;}private void button2_Click(object sender, EventArgs e){this.Close();}private void button1_Click(object sender, EventArgs e){if (textBox1.Text.Trim() == ""){MessageBox.Show("请输入您要修改的学生学号", "提示");}else{SqlConnection Connection1 = new SqlConnection("Server=(local);Database=学生管理系统;Integrated Security=SSPI");Connection1.Open();SqlCommand cmd = new SqlCommand("select * from student where ID = '" + textBox1.Text.Trim() + "'", Connection1);if (cmd.ExecuteScalar() == null){MessageBox.Show("此用户不存在", "提示");textBox1.Clear();textBox2.Clear();textBox3.Clear();textBox4.Clear();}else{if (textBox2.Text.Trim() != "" && checkBox1 .Checked ==true ){SqlCommand cmd1 = new SqlCommand("select * from student where ID='" + textBox1.Text.Trim() + "'", Connection1);String sql;sql = "update student set name='" + textBox2.Text.Trim() + "' where ID='" + textBox1.Text.Trim() + "'";mandText = sql;cmd1.ExecuteNonQuery();textBox2.Clear();}if (textBox3.Text.Trim() != "" && checkBox2.Checked == true){SqlCommand cmd2 = new SqlCommand("select * from student where ID='" + textBox1.Text.Trim() + "'", Connection1);String sql;sql = "update student set age='" + textBox3.Text.Trim() + "' where ID='" + textBox1.Text.Trim() + "'";mandText = sql;cmd2.ExecuteNonQuery();textBox3.Clear();}if (textBox4.Text.Trim() != "" && checkBox3.Checked == true){SqlCommand cmd3 = new SqlCommand("select * from student where ID='" + textBox1.Text.Trim() + "'", Connection1);String sql;sql = "update student set phone='"+ textBox4.Text.Trim() + "' where ID='" + textBox1.Text.Trim() + "'";mandText = sql;cmd3.ExecuteNonQuery();textBox4.Clear();}if (comboBox1.Text.Trim() != "" && checkBox4.Checked == true){SqlCommand cmd4 = new SqlCommand("select * from student where ID='" + textBox1.Text.Trim() + "'", Connection1);String sql;sql = "update student set sd='" + comboBox1.Text.Trim() + "' where ID='" + textBox1.Text.Trim() + "'";mandText = sql;cmd4.ExecuteNonQuery();}if (comboBox2.Text.Trim() != "" && checkBox5.Checked == true){SqlCommand cmd5 = new SqlCommand("select * from student where ID='" + textBox1.Text.Trim() + "'", Connection1);String sql;sql = "update student set zhuanye ='" + comboBox2.Text.Trim() + "' where ID='" + textBox1.Text.Trim() + "'";mandText = sql;cmd5.ExecuteNonQuery();}if (comboBox3.Text.Trim() != "" && checkBox6.Checked == true){SqlCommand cmd6 = new SqlCommand("select * from student where ID='" + textBox1.Text.Trim() + "'", Connection1);String sql;sql = "update student set class='"+ comboBox3.Text.Trim() + "' where ID='" + textBox1.Text.Trim() + "'";mandText = sql;cmd6.ExecuteNonQuery();}MessageBox.Show("修改完成", "提示");textBox1.Clear();}}}}}using System;using System.Collections.Generic;using ponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Data.SqlClient;namespace学生学籍管理系统{public partial class删除学生信息 : Form{public删除学生信息(){InitializeComponent();}private void删除学生信息_Load(object sender, EventArgs e){SqlConnection conn = new SqlConnection("server=(local);database=学生管理系统;Integrated Security=SSPI");conn.Open();SqlDataAdapter adp1 = new SqlDataAdapter("select distinct sd from sdept ", conn);DataSet ds1 = new DataSet();adp1.Fill(ds1, "s1");comboBox1.DataSource = ds1.Tables["s1"].DefaultView;comboBox1.DisplayMember = "sd";comboBox1.ValueMember = "sd";SqlDataAdapter adp5 = new SqlDataAdapter("select distinct year1 from student ", conn);DataSet ds5 = new DataSet();adp5.Fill(ds5, "s5");comboBox5.DataSource = ds5.Tables["s5"].DefaultView;comboBox5.DisplayMember = "year1";comboBox5.ValueMember = "year1";comboBox5.Hide();}private void checkBox5_CheckedChanged(object sender, EventArgs e){comboBox5.Visible = checkBox5.Checked;}private void comboBox1_SelectedIndexChanged(object sender, EventArgs e){if (comboBox1.Text.Trim() != ""){SqlConnection conn = new SqlConnection("server=(local);database=学生管理系统;Integrated Security=SSPI");conn.Open();SqlDataAdapter adp2 = new SqlDataAdapter("select distinct zhuanye from sdept where sd='" + comboBox1.Text.Trim() + "'", conn);DataSet ds2 = new DataSet();adp2.Fill(ds2, "s2");comboBox2.DataSource = ds2.Tables["s2"].DefaultView;comboBox2.DisplayMember = "zhuanye";comboBox2.ValueMember = "zhuanye";}}private void comboBox2_SelectedIndexChanged(object sender, EventArgs e){if (comboBox2.Text.Trim() != ""){SqlConnection conn = new SqlConnection("server=(local);database=学生管理系统;Integrated Security=SSPI");conn.Open();SqlDataAdapter adp3 = new SqlDataAdapter("select distinct class from sdept where sd='" + comboBox1.Text.Trim() + "'and zhuanye='" + comboBox2.Text.Trim() + "'", conn);DataSet ds3 = new DataSet();adp3.Fill(ds3, "s3");comboBox3.DataSource = ds3.Tables["s3"].DefaultView;comboBox3.DisplayMember = "class";comboBox3.ValueMember = "class";}}private void comboBox3_SelectedIndexChanged(object sender, EventArgs e){if (comboBox3.Text.Trim() != ""){SqlConnection conn = new SqlConnection("server=(local);database=学生管理系统;Integrated Security=SSPI");conn.Open();SqlDataAdapter adp4 = new SqlDataAdapter("select ID from student where sd='" + comboBox1.Text.Trim() + "'and zhuanye='" + comboBox2.Text.Trim() + "' and class='" + comboBox3.Text.Trim() + "' ", conn);DataSet ds4 = new DataSet();adp4.Fill(ds4, "s4");comboBox4.DataSource = ds4.Tables["s4"].DefaultView;comboBox4.DisplayMember = "ID";comboBox4.ValueMember = "ID";}}private void button1_Click(object sender, EventArgs e){if (checkBox5.Checked == false){SqlConnection conn = new SqlConnection("server=(local);database=学生管理系统;Integrated Security=SSPI");conn.Open();SqlCommand cmd = new SqlCommand("select * from chengji where sno='" + comboBox4.Text.Trim() + "'", conn);if (cmd.ExecuteScalar() != null){String sql1;sql1 = "delete from chengji where sno='" + comboBox4.Text.Trim() + "'"; mandText = sql1;cmd.ExecuteNonQuery();}else{}String sql;sql = "delete from student where ID='" + comboBox4.Text.Trim() + "'";mandText = sql;cmd.ExecuteNonQuery();MessageBox.Show("删除成功", "提示");}else{SqlConnection conn = new SqlConnection("server=(local);database=学生管理系统;Integrated Security=SSPI");conn.Open();SqlCommand cmd = new SqlCommand("select * from student ", conn);String sql1,sql2;sql1 = "delete from chengji where sno=(select ID from student where year1='" + comboBox5.Text.Trim() + "')";mandText = sql1;cmd.ExecuteNonQuery();sql2 = "delete from student where year1='" + comboBox5.Text.Trim() + "'";mandText = sql2;cmd.ExecuteNonQuery();MessageBox .Show ("删除成功","提示");}}private void button2_Click(object sender, EventArgs e){this.Close();}}}四、实验总结在开始编写程序的时候总是有一些出错,在查找有关书籍并在网上查询了相关信息后后得出了结果。

学生学籍管理系统总结报告

学生学籍管理系统总结报告1.引言1.1 概述学生学籍管理系统是一种专门用于管理学生学籍信息的软件系统。

随着教育信息化的发展,学生学籍管理系统的引入已经成为现代教育管理的必然趋势。

这个系统旨在提高学校对学生学籍信息的管理效率,减轻教育管理人员的工作负担,并为学校提供全面准确的学生学籍数据。

在过去,学生学籍管理主要依靠手工填写纸质表格、人工整理等方式,操作繁琐且容易出错。

而学生学籍管理系统的引入,将学生学籍信息数字化,实现了信息的自动化录入、存储和管理。

通过该系统,学校可以轻松地查看和管理学生的课程成绩、选课情况、学籍变动等信息,方便教务人员、班主任、学生和家长的日常教育管理工作。

学生学籍管理系统的主要功能包括学生信息管理、学生成绩管理、学生选课管理、学生请假管理等。

学校可以根据实际需求进行定制,并根据学校的情况进行灵活的配置和应用。

同时,该系统还提供了数据统计、报表生成等功能,方便学校进行教育和学籍管理的分析和决策。

总之,学生学籍管理系统的引入对于提高学校的教育管理水平、提升学生学习质量具有重要意义。

它不仅可以提高学校管理效率,减轻工作压力,还可以有效提升学校教育管理水平,为学生提供更好的教育服务。

随着信息技术的不断发展,学生学籍管理系统将会不断完善和改进,为学校的发展和学生的成长提供更多的便利和支持。

1.2文章结构1.2 文章结构本报告主要包括以下几个部分:首先,引言部分将对本报告的概述进行介绍,说明文章的目的和结构,为读者提供整体的了解。

其次,正文部分将详细介绍学生学籍管理系统的设计与实施情况。

这部分将包括系统需求分析、系统设计、系统开发与实施等内容,通过对系统设计和实施过程的阐述,读者可以了解到学生学籍管理系统的具体实现方式以及所涉及的技术和方法。

然后,正文部分还将探讨学生学籍管理系统的应用与效果。

这部分将通过对系统应用情况和效果评价的分析,阐述学生学籍管理系统在提高学校管理效率、优化学生学习流程、提升教学质量等方面的积极作用。

学籍管理系统实验报告终版

学籍管理系统实验报告终版(总10页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--学籍管理系统实验报告终版jxjk数据库课程设计——学籍管理系统2016-9-6安徽大学计算机科学与技术1班陈斌E目录一、实验目的及要求................................................................... ....21.实验目的................................................................... ...................22.实验要求................................................................... ...................2二、实验环境................................................................... ...............2三、实验内容与步骤................................................................... ....31.系统需求分析................................................................... ...........32.概念结构设计................................................................... ...........63.逻辑结构设计................................................................... ...........94.数据库与应用系统的实施和维护.............................................11四、总结................................................................... .. (28)一、目的及要求1.实验目的(1)通过本次课程设计,熟练掌握一种开发语言(如C#)和一种数据库系统软件(如SQLserver2014)的使用。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

学籍管理系统实验报告终版(总10页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--学籍管理系统实验报告终版jxjk数据库课程设计——学籍管理系统2016-9-6安徽大学计算机科学与技术1班陈斌E目录一、实验目的及要求................................................................... ....21.实验目的................................................................... ...................22.实验要求................................................................... ...................2二、实验环境................................................................... ...............2三、实验内容与步骤................................................................... ....31.系统需求分析................................................................... ...........32.概念结构设计................................................................... ...........63.逻辑结构设计................................................................... ...........94.数据库与应用系统的实施和维护.............................................11四、总结................................................................... .. (28)一、目的及要求1.实验目的(1)通过本次课程设计,熟练掌握一种开发语言(如C#)和一种数据库系统软件(如SQLserver2014)的使用。

(2)加深对软件工程的理解,训练编写程序的良好习惯。

包括:认真编写需求分析文档、做好系统功能和数据库设计、学会自己进行程序的算法、数据结构设计。

(3)培养良好的程序设计风格(模块划分、接口设计、程序界面、应用系统设计)和习惯(程序备份、版本更新与控制),提高软件测试、调试的能力与技巧。

(4)通过本次课程设计,应该达到具有独立完成小型应用系统设计的能力,具备编写较为规范的软件设计文档的能力。

2.实验要求设计本系统模拟学校学籍管理内容,包括学生入学登记、学生选课、考试成绩登记、补考处理及教师教学质量分析统计等,简化的系统需要管理的情况如下:(1)可随时查询出不同系及各系教师与各系学生情况,系、教师与学生各反映如下情况:系:系号、系名、系负责人、专业数等教师:工号、姓名、性别、职称、工龄、出生年月、基本工资等学生:学号、姓名、性别、年龄等(2)为简单起见教师与学生区分系别,而课程不分系,课程需反映如下信息:课程代号、课程名、课程数、必修课、学分。

(3)学生入学时新生需录入登记,登记后即可选课学习课程(一学期约20学分)。

(4)一门课只由一位教师上,一位教师可上多门课,满30人才开课。

(5)学生选每门课有个成绩,若成绩不及格则补考后还需记录补考成绩。

二、实验环境本系统开发平台及运行环境如下:系统开发平台:MicrosoftVisualStudio2015系统开发语言:C#数据库管理软件:SQLServer2014运行平台:Windows10教育版运行环境:三、实验内容与步骤1.系统需求分析(1)信息要求:指用户需要从数据库中获得信息的内容与性质。

数据库中需要存储哪些数据。

本系统是针对学生学籍管理,主要涉及教师信息、学生选修课程信息、学校开设的课程信息、学校的院系信息、教师开设课程信息、学生选修课程成绩信息等多种数据信息。

用户名和密码信息:字段名数据类型长度主键否描述Usernamevarchar16是用户名Passwordvarchar16密码Userclasschar1用户类别学生信息:字段名数据类型长度主键否描述Sidvarchar16是学号Snamevarchar16 姓名Ssexchar1性别Sageint年龄Sdepvarchar16所属系别Stelchar11电话SIDcardchar18身份证号教师信息:字段名数据类型长度主键否描述Tidvarchar16是工号Tnamevarchar16 姓名Tsexchar1性别Tprotitlevarchar16职称Tworktimeint工龄Tbirthdate出生年月Tsalfloat工资Tdepvarchar16所属系别Ttelchar11电话TIDcardchar18身份证号院系信息:字段名数据类型长度主键否描述Didvarchar16是系号Dnamevarchar64 系名Dchiefvarchar16负责人Dmajorcountint专业数Dareavarchar64地址课程信息:字段名数据类型长度主键否描述Cidvarchar16是课程代号Cnamevarchar32课程名Ccountint课程数Ccompulsorychar1是否必修Ccreditfloat学分Tidvarchar16授课教师学生选课信息:字段名数据类型长度主键否描述Sidvarchar16是学号Cidvarchar16课程代号Fscoreint正考成绩Sscoreint补考成绩课程选修人数:字段名数据类型长度主键否描述Cidvarchar16是课程代号Numbersint 选修人数(2)处理要求:用户需要完成什么处理功能,对处理的响应时间有什么要求(给出功能模块图)。

学籍管理系统主要满足三类用户的要求,这三类用户分别是教务处的系统管理员、教师和学生。

系统管理员能对学生信息、教师信息、课程信息等进行有效的管理和维护,包括增加、删除、修改等基本的维护功能和灵活的查询功能;教师和学生能够对个人基本信息、授课、选课所涉及的有关信息进行查询、更新等操作。

具体的需求分析如下:1)系统管理员:①维护学生的个人基本信息②维护教师的个人基本信息③维护课程信息④新生入学登记2)学生用户:①查询和修改个人信息②进行选课操作③查询当前所选课程信息和以前所选课程的成绩信息3)教师用户:①查询和修改个人信息②课程结束后,教师对所教授的学生进行成绩登记③查询教学安排功能模块图如下所示:学籍管理系统学生操作模块教师操作模块用户登录模块学生登录教师登录管理员登录管理员操作模块查询个人信息修改个人信息选课查询课程成绩查询教学安排维护学生信息维护课程信息维护教师信息查询个人信息修改个人信息成绩登记新生入学登记图图1功能模块图(3)安全性与完整性要求。

数据库的安全性是指保护数据库,防止不合法的使用所造成的数据泄露和破坏。

数据库系统中保证数据安全性的主要措施是进行存取控制,即规定不同用户对于不同数据对象所允许执行的操作,并控制各用户只能存取他有权(操作权力)存取的数据。

存取控制机制分为自主存取控制(DAC)与强制存取控制(MAC),主要包括两部分:一是定义用户权限,并将用户权限登记到数据字典中;二是合法权限检查。

数据库完整性指数据的(逻辑而非物理)正确性和相容性。

为了防止数据库中存在不合语义的数据,防止错误数据的输入和输出。

数据库完整性技术包括完整性约束条件与完整性检查两部分。

完整性约束条件指为维护数据库的完整性,DBMS提供加在数据库数据之上的语义约束条件,作为数据库模式的一部分存入数据库。

完整性检查意味检查数据库是否满足完整性约束条件的机制。

完整性约束条件作用的对象可以是关系、元组、列三种。

其中列约束主要是列的类型、取值范围、精度、排序等的约束条件。

元组的约束是元组中各个字段间的联系的约束。

关系的约束是若干元组间、关系集合上以及关系之间的联系的约束。

完整性约束条件涉及这三类对象,其状态可以是静态的,也可以是动态的。

完整性约束条件一般分为实体完整性、参考完整性自定义完整性。

定义实体完整性约束条件要考虑修改关系中主码的问题;定义参考完整性约束条件要考虑外码能否接受空值问题、在被参照关系中删除元组的问题(级联删除或受限删除)、在参照关系中插入元组时的问题。

2.概念结构设计根据分析,学籍管理系统包含学生、教师、院系及课程4个实体,各个实体的局部E-R图如下所示,其中学号是学生实体的主码,工号是教师实体的主码,系号是院系实体的主码,课程号是课程实体的主码,负责人是院系实体的外码(参照的是教师实体的工号)。

学生学号姓名性别年龄电话身份证号图图2学生实体及属性教师工号姓名性别职称工龄出生年月工资电话身份证号图图3教师实体及属性院系系号系名负责人专业数地址图图4院系实体及属性课程课程代号课程名课程数是否必修学分图图5课程实体及属性(1)逐一设计分ER图,合并分ER图,生成基本ER图。

根据需求分析的结果可以看到,在学籍管理系统中,一个学生可以选择多门课程,一个教师可以教授多门课程,一门课程可以被多个学生选修,只能由一位教师教授。

由此可知,学生、教师、课程三者之间通过选课进行联系。

教师和学生区分系别,因此学生与院系,教师与院系均存在联系。

由以上分析可得各个局部的E-R图,如下所示(忽略各个实体的属性):学生院系学习n1图图6学生与院系之间的E-R图教师院系工作1m图图7教师与院系之间的E-R图学生课程选修nm成绩学生教师教授nm图图8学生与课程之间的E-R图图图9学生与教师之间的E-R图教师课程讲授1m图图10教师与课程之间的E-R图(2)若在合并中存在属性冲突、命名冲突以及结构冲突,给出解决办法,若存在不必要的冗余,则消除并给出设计方法。

合并分E-R图并不是单纯地将各个分E-R图画在一起,而是必须消除各个分E-R图中的不一致,以形成一个能为全系统中所有用户共同理解和接受的统一的概念模型。

各个分E-R图之间的冲突包括3种:属性冲突、命名冲突以及结构冲突。

经过分析,得到学生、教师、院系和课程3者之间可以通过选课这个联系进行关联。

因此,合并各个分E-R图,生成基本E-R图,如下所示:教师课程学生选修院系讲授工作学习n11mnmn1工号姓名性别职称工龄出生年月工资电话身份证号系号系名专业数地址学号姓名性别年龄电话身份证号课程代号课程名课程数是否必修学分正考成绩负责11补考成绩图图11学籍管理系统基本E-R图(3)基本ER图中要求标明主码、外码、联系类型。

相关文档
最新文档