版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 数据库课程设计报告学生信息管理系统 学 校:佳木斯大学 学 院 :信息电子技术学院 年 级 :09级 专 业 :计算机科学与技术 姓 名 :XXX 学 号 :XXXXXXXXX 指 导 教 师 :XX 一、 课程设计选题的意义此次课程设计可以使我经历一个数据库系统开发的全过程并受到一次综合的训练,以便能较为全面的理解掌握和综合运用所学的的知识去分析解决实际问题。数据库课程设计使用的数据库软件是Microsoft SQL Server 2005,使用的工具是C#,通过建立数据库的连接使整个学生信息管理系统更加完善。二、需求分析2.1 需求分析的任务 需求分析的主要任务是通过详细调查佳木斯大学的
2、学生信息管理系统,充分了解原系统工作概况,明确各种需求然后在此基础上确定新系统的功能。对数据库的要求有信息、处理、安全性与完整性的要求。 2.2 需求分析的方法 通过进入各个大学的学生信息管理系统的深入了解,界面分析、询问,还有各种书籍上的介绍,再加上我作为一名学生自身对学生信息管理系统的了解等对整体课程设计的进行了详细的分析。 2.3 数据字典 用户的需求具体体现在各种信息的查询、修改、删除,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构以及数处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。针对一般学生信息管理系统的需求,能过对学生学习过程的内容和数据
3、流程分析,设计如下所示的数据项和数据结构:l 学生信息管理:通过这一模块,可以实现学生基本情况的添加、修改、删除,数据项包括学生学号、学生姓名、性别、年龄、所在系。l 学生信息查询:通过这一模块,使用查询条件学号,姓名,性别可以查询各个学生的情况,数据项包括学生学号、学生姓名、性别、年龄、所在系。l 学生成绩管理:通过这一模块,可以实现学生成绩情况的添加、修改、删除,数据项包括学号、课程号、成绩 。l 学生信息查询:通过这一模块,使用学号查询条件,可以实现学生成绩情况的查询,数据项包括学号、课程号、成绩 。l 学生课程管理:通过这一模块,可以实现学生课程的添加、修改、删除,数据项包括课程号、课
4、程名、先行课、学分。l 学生奖学金管理:通过这一模块,可以实现已获奖学金信息的添加、修改、删除,数据项包括学号、姓名、已获奖学金。l 管理员选项:通过这一模块,可以实现对学生信息管理系统管理人员的添加,数据项包括用户名和 密码。三、 数据库的概念设计 首先设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。该设计规划出的实体有:学生实体、课程实体。学生 学 号 姓 名 性 别 年 龄选课课程 成 绩 课程名 课程号 先行课课程学分 专 业四、 数据库的逻辑设计现在需要将上面的数据库概念结构转化为SQL
5、Server 2005数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。在上面的实体以及实体之间关系的基础上,开成数据库中的表格以及各个表格之间的关系。学生信息管理系统数据库中各个表格的设计结果如下面的几个表格所示。1. 学生基本信息表student 学生基本信息表student列名数据类型可否为空说明snoVARCHAR(50)NOT NULL学号(主键)snameVARCHAR(50)NULL姓名ssexVARCHAR(50)NULL性别sageVARCHAR(50)NULL年龄sdeptVARCHAR(50)NULL所在系2.课程基本信息表course课程基本信息表course列名
6、数据类型可否为空说明cnoVARCHAR(50)NOT NULL课程号(主键)cnameVARCHAR(50)NULL课程名cpnoVARCHAR(50)NULL先行课ccreditVARCHAR(50)NULL课程学分3学生成绩信息表sc学生成绩信息表sc列名数据类型可否为空说明snoVARCHAR(50)NOT NULL学号(主键)cnoVARCHAR(50)NOT NULL课程号(主键)gradeVARCHAR(50)NULL成绩4管理员信息表stu_user管理员信息表stu_user列名数据类型可否为空说明usernameVARCHAR(50)NOT NULL用户名(主键)passw
7、dVARCHAR(50)NOT NULL密码5学生奖学金信息表stujc管理员信息表stujc列名数据类型可否为空说明snoVARCHAR(50)NOT NULL学号(主键)snameVARCHAR(50) NULL姓名sjcVARCHAR(50)NULL奖学金五、 系统完成的主要功能系统功能分析是在系统开发的总体任务的基础上完成的。本设计中学生信息管理系统需要完成的功能主要有:l 有关学生学籍信息的基本操作,包括查询所在班级进行学生基本信息操作(查询、修改、删除)、查询某个学生的学生基本信息操作等。l 有关学生课程信息的基本操作,包括查询所在班级进行学生所选课程信息操作(查询、修改、删除)、
8、查询某个学生所学课程的基本操作等。l 有关学生成绩信息的基本操作,包括查询所在班级进行学生所选课程成绩操作(查询、修改、删除)、查询某个学生所学课程成绩的基本操作等。对各项功能进行集中、分块,按照结构化程序设计的要求,系统功能模块图如下:学生信息管理系统奖学金管理学生成绩管理学生课程管理学生信息管理奖学金删除奖学金更改奖学金添加学生成绩删除学生成绩添加学生成绩更改学生成绩查询学生课程查询学生课程删除学生课程修改学生课程添加学生信息删除学生信息修改学生信息添加学生信息查询六、 实现的主要技术手段和方法一、 创建数据库文件.mdf1开始菜单打开Microsoft Visual Stdio2010新
9、建项目选择windows窗体应用程序右键项目名添加新建项选择数据基于服务的数据库2数据库连接方法SqlConnection myConnection = new SqlConnection(Data Source=.SQLEXPRESS;AttachDBFilename=|DataDirectory|stu_managesystem.mdf;Integrated Security=True;User Instance=True);二、学生信息处理1学生信息的管理功能,此部分实现了对学生基本信息添加修改删除操作。关键代码如下namespace stu_managesystem public pa
10、rtial class stu_inf : Form public stu_inf() InitializeComponent(); SqlConnection myConnection; SqlCommand sqlCommand; private void stu_inf_Load(object sender, EventArgs e) / myConnection = new SqlConnection(); myConnection = new SqlConnection(Data Source=.SQLEXPRESS;AttachDBFilename=|DataDirectory|s
11、tu_managesystem.mdf;Integrated Security=True;User Instance=True); sqlCommand = new SqlCommand(); sqlCommand.Connection = myConnection; sqlCommand.CommandType = CommandType.Text; sqlCommand.CommandText = select * from student; myConnection.Open(); SqlDataReader dreader = sqlCommand.ExecuteReader(Comm
12、andBehavior.CloseConnection); while (dreader.Read() ListViewItem newItem = listView1.Items.Add(dreadersno.ToString().Trim(); newItem.SubItems.Add(dreadersname.ToString().Trim(); newItem.SubItems.Add(dreaderssex.ToString().Trim(); newItem.SubItems.Add(dreadersage.ToString().Trim(); newItem.SubItems.A
13、dd(dreadersdept.ToString().Trim(); dreader.Close(); private void listView1_SelectedIndexChanged(object sender, EventArgs e) if (listView1.SelectedItems.Count 0) textBox1.Text = listView1.SelectedItems0.Text; textBox2.Text = listView1.SelectedItems0.SubItems1.Text; textBox3.Text = listView1.SelectedI
14、tems0.SubItems2.Text; textBox4.Text = listView1.SelectedItems0.SubItems3.Text; textBox5.Text = listView1.SelectedItems0.SubItems4.Text; private void button1_Click(object sender, EventArgs e) if (button1.Text = 添加) button1.Text = 保存; textBox1.Text = ; textBox2.Text = ; textBox3.Text = ; textBox4.Text
15、 = ; textBox5.Text = ; textBox1.Focus(); textBox1.ReadOnly = false; textBox2.ReadOnly = false; textBox3.ReadOnly = false; textBox4.ReadOnly = false; textBox5.ReadOnly = false; button2.Enabled = false; button3.Enabled = false; else sqlCommand.CommandText = insert into student values( + textBox1.Text
16、+ , + textBox2.Text + , + textBox3.Text + , + textBox4.Text + , + textBox5.Text + ); myConnection.Open(); int cmdresults = sqlCommand.ExecuteNonQuery(); myConnection.Close(); if (cmdresults = 1) textBox1.ReadOnly = true; textBox2.ReadOnly = true; textBox3.ReadOnly = true; textBox4.ReadOnly = true; t
17、extBox5.ReadOnly = true; button2.Enabled = true; button3.Enabled = true; ListViewItem newItem = listView1.Items.Add(textBox1.Text); newItem.SubItems.Add(textBox2.Text); newItem.SubItems.Add(textBox3.Text); newItem.SubItems.Add(textBox4.Text); newItem.SubItems.Add(textBox5.Text); button1.Text = 添加; M
18、essageBox.Show(插入数据成功); else MessageBox.Show(插入数据失败); void TextBox1TextChanged(object sender, EventArgs e) 2学生信息查询功能,此部分实现了对学生信息的查询功能。关键代码如下namespace stu_managesystem public partial class stu_ser : Form public stu_ser() InitializeComponent(); private SqlDataAdapter sqlDataAdapter; private DataSet ds
19、Score; private void stu_ser_Load(object sender, EventArgs e) / SqlConnection myConnection = new SqlConnection(); SqlConnection myConnection = new SqlConnection(Data Source=.SQLEXPRESS;AttachDBFilename=|DataDirectory|stu_managesystem.mdf;Integrated Security=True;User Instance=True); SqlCommand sqlCom
20、mand = new SqlCommand(); sqlCommand.Connection = myConnection; sqlCommand.CommandType = CommandType.Text; sqlCommand.CommandText = select * from student; sqlDataAdapter = new SqlDataAdapter(); sqlDataAdapter.SelectCommand = sqlCommand; SqlCommandBuilder builder = new SqlCommandBuilder(sqlDataAdapter
21、); dsScore = new DataSet(); sqlDataAdapter.Fill(dsScore, student); this.BindingContextdsScore, student.PositionChanged += new EventHandler(BindingManagerBase_PositionChanged); dataGridView1.DataSource = dsScore; dataGridView1.DataMember = student; ShowPosition(); /setState(true); private void ShowPo
22、sition() int iCnt, iPos; iCnt = this.BindingContextdsScore, student.Count; iPos = this.BindingContextdsScore, student.Position + 1; private void BindingManagerBase_PositionChanged(object sender, EventArgs e) ShowPosition(); private void button1_Click(object sender, EventArgs e) if (textBox1.Text = )
23、 MessageBox.Show(学号不能为空); else string a = textBox1.Text; / SqlConnection myConnection = new SqlConnection(); SqlConnection myConnection = new SqlConnection(Data Source=.SQLEXPRESS;AttachDBFilename=|DataDirectory|stu_managesystem.mdf;Integrated Security=True;User Instance=True); SqlCommand sqlCommand
24、 = new SqlCommand(); sqlCommand.Connection = myConnection; sqlCommand.CommandType = CommandType.Text; sqlCommand.CommandText = select * from student where sno= + a + ; sqlDataAdapter = new SqlDataAdapter(); sqlDataAdapter.SelectCommand = sqlCommand; SqlCommandBuilder builder = new SqlCommandBuilder(
25、sqlDataAdapter); dsScore = new DataSet(); sqlDataAdapter.Fill(dsScore, student); this.BindingContextdsScore, student.PositionChanged += new EventHandler(BindingManagerBase_PositionChanged); dataGridView1.DataSource = dsScore; dataGridView1.DataMember = student; ShowPosition(); textBox1.Text = ; 3学生成
26、绩管理,此部分实现了对学生基本成绩添加、修改、删除操作。关键代码与学生信息管理相似4学生成绩查询,此部分实现了对学生成绩的查询操作。 关键代码与学生信息查询相似5.学生课程管理,此部分实现了对学生课程信息的添加、修改、删除操作。关键代码与学生信息管理相似6.学生奖学金管理,此部分实现了对学生已获奖学金信息的添加、修改、删除操作。 关键代码与学生信息管理相似 7.管理员添加,此部分实现了对管理人员添加操作。 关键代码如下namespace stu_managesystem public partial class add_user : Form public add_user() Initial
27、izeComponent(); private void button1_Click(object sender, EventArgs e) if (textBox1.Text = ) MessageBox.Show(用户名不能为空); if (textBox2.Text = ) MessageBox.Show( 密码不为空); else string a = textBox1.Text; string b = textBox2.Text; DB_CZ u = new DB_CZ(); string sql = insert into stu_user values( + a + , + b + ); u.ExcSql(sql); MessageBox.Show(添加成功
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 盐城工学院《物权法》2025-2026学年期末试卷
- 徽商职业学院《国际信贷》2025-2026学年期末试卷
- 华东交通大学《广告创意表现》2025-2026学年期末试卷
- 长春工程学院《服务贸易》2025-2026学年期末试卷
- 蚌埠城市轨道交通职业学院《货币银行学》2025-2026学年期末试卷
- AI驱动数据分类
- 病毒性肝炎预防策略
- 国旗班竞选面试技巧
- “让我把幸福告诉你”少先队活动课教案
- 农化技术员岗前岗位操作考核试卷含答案
- 2025年数字媒体编辑创作师技能测评试卷及答案解析
- 2025年凉山州中考语文试题答案解析卷
- 夜间生产管理办法
- 《智慧物流概论》试卷及答案 共2套
- 肿瘤患者的心理护理和人文关怀
- 《企业用电安全培训课件 - 工业电路与电器设备安全管理》
- 《高效流程审核技巧》课件
- 骨灰堂管理制度
- 2025年巨量创意营销初级1.0考试题库
- GB/T 15561-2024数字指示轨道衡
- 全季酒店培训体系介绍
评论
0/150
提交评论