1、运动会成绩管理系统第一章 概述第二章 需求分析 2。1 问题陈述2.2 功能分析2.3 数据流图2。4 数据字典第三章概念结构设计第四章 逻辑结构设计第五章 软件功能设计第六章 代码设计和界面设计小结参考文献课程设计任务书1、课程设计题目运动会成绩管理系统2、设计任务和内容一个运动会成绩管理系统是根据学校的实际运动会工作专门设计的一个管理信息系统。该系统能够对项目、运动员、成绩进行有效管理.对以上信息管理主要包括:登记各项比赛成绩、根据预赛成绩产生预(决)赛名单,同时能够进行适当的统计工作和结果输出,可以满足各个单位、个人成绩查询的需求。本课题任务是开发一个运动会成绩管理系统,并撰写符合规范的
2、课程设计说明书以体现设计过程和设计结果。3、设计步骤和要求设计步骤:首先进行相关资料查阅和学习,了解基本的业务流程和系统数据功能要求。然后结合软件工程的理论和教材中数据库设计的六个阶段(重点是前三个阶段)完成设计任务,即系统结构设计(需求分析、概念结构设计、逻辑结构设计、物理结构设计)和系统功能设计。设计要求:1、撰写课程设计说明书。其要求如下:(1)基本要求: 能反映完成了上述设计内容要求。 要求撰写不少于5000个文字(20页)的文档. 文档中至少要包括:数据流图、数据字典、E-R图、数据库表的详细说明、系统功能结构图、主要功能模块说明。 课程设计说明书一律用碳素墨水书写,其中用户界面设计
3、可以附界面的计算机截图或手工绘图。(2)文档格式要求(遵循数据库原理及应用课程设计大纲上的要求)其中,正文部分:分章、层次等,每一章从新一页开始。章节安排可如下安排概述:包括项目背景、编写目的、软件定义、开发环境等内容. 需求分析:问题陈述、需完成的功能。以数据流图和数据字典表达。概念结构设计:将上述需求分析的成果抽象为ER模型图。 逻辑结构设计:把ER模型图转换为关系表;描述每一个基本表关系。并进行规范化;定义视图、定义索引、主关键字、定义权限。软件功能设计:画出系统功能结构图,描述每个功能所完成的任务。 代码设计和界面设计:给出主要功能的代码并有适当的说明;界面设计要合理,给出主要界面。2
4、、一个可运行的运动会成绩管理系统原型.(根据学分制的实际情况该要求为部分专业学生的要求,其他专业学生为可选要求) 指导教师(签名):年 月 日第六章.代码设计和界面设计6.1 登录模块用户输入正确的用户类型、用户名和密码,如果用户类型为记录员,则直接进入主界面,若果用户类型为查询者,则其只能够进入查询主界面.点击注册按钮进入注册界面,点击退出系同则退出系统.代码设计:SqlDataAdapter sda; DataSet ds; static string connectionstring = server=localhost;database=leiliang;uid=sa;pwd= ”;
5、SqlConnection mySqlConnection = new SqlConnection(connectionstring);private void button1_Click(object sender, EventArgs e) mySqlConnection。Open();sda = new SqlDataAdapter(”Select From User where 用户类型=”+ comboBox1。Text+”and 用户名= +textBox1。Text+ and 密码=”+textBox2.Text+”, mySqlConnection);/新建数据适配器SqlCo
6、mmandBuilder scb = new SqlCommandBuilder(sda);/创建SqlCommandBuilder,可产生自动更新DataSet的语句 ds = new DataSet();sda.Fill(ds);/填充ds数据集 if (comboBox1.text=”记录员”&ds。Tables0.Rows.Count != 0) Form3 f3 = new Form3(); f3.Show();this.Hide(); else if (comboBox1。text=”记录员&ds.Tables0。Rows.Count != 0) Form5 f5 = new Fo
7、rm5(); F5。Show();this。Hide();else MessageBox.Show(”用户不存在或密码错误!, 提示, MessageBoxButtons。OK, MessageBoxIcon.Information); textBox1。Clear();textBox2。Clear(); textBox1。Focus(); mySqlConnection.Close(); private void button2_Click_1(object sender, EventArgs e) Form2 f2 = new Form2();f2.Show();this.Hide();
8、private void button3_Click(object sender, EventArgs e) DialogResult dr = MessageBox。Show(this, ”确认要出吗?”, 提示”, MessageBoxButtons.YesNo, MessageBoxIcon。Question); try if (dr = DialogResult。Yes) this.Close(); Application.Exit(); catch (Exception a)MessageBox.Show(”异常!没有选择); 6。2 注册模块用户输入符合要求的用户类型、用户名和密码
9、可以注册成新的用户,并可以返回登陆界面重新登录系统,出于安全性考虑,新注册的用户类型必须只是普通的查询者.代码设计:SqlDataAdapter sda; DataSet ds;static string connectionstring= server=localhost;database=leiliang;uid=sa;pwd= ”;SqlConnection mySqlConnection = new SqlConnection(connectionstring);private void button1_Click(object sender, EventArgs e) string
10、用户名 = this.textBox1.Text.ToString();string 密码 = this。textBox2。Text.ToString ();string 用户类型 = this。textBox4.Text。ToString ();string pwd1 = this.textBox3.Text.ToString(); if (用户名 =” | 密码 = | 用户类型 =| pwd1 =”) MessageBox。Show(”所有内容都不能为空,请重新输入!, 提示”, MessageBoxButtons。OK, MessageBoxIcon.Information); tex
11、tBox1.Clear(); textBox2。Clear(); textBox3。Clear();textBox4。Clear(); textBox1。Focus(); else if (密码 != pwd1) MessageBox.Show(”两次密码输入必须一致!, ”提示”, MessageBoxButtons.OK, MessageBoxIcon。Information); textBox2。Clear(); textBox3.Clear(); textBox4.Clear(); textBox2.Focus(); else mySqlConnection.Open(); SqlDa
12、taAdapter sda1 = new SqlDataAdapter(Select From User where 用户名=”+textBox1.Text+”, mySqlConnection);/新建数据适配器 SqlCommandBuilder scb1= new SqlCommandBuilder(sda1);/创建SqlCommandBuilder,可产生自动更新DataSet的语句 DataSet ds1 = new DataSet(); sda1。Fill(ds1);/填充ds数据集 if (ds1。Tables0。Rows。Count=0) sda = new SqlDataA
13、dapter(insert into User(用户类型,用户名 ,密码)values(” textBox4.Text + +” +textBox1。Text+,”+ textBox2。Text + ), mySqlConnection);/新建数据适配器 SqlCommandBuilder scb = new SqlCommandBuilder(sda);/创建SqlCommandBuilder,可产生自动更新DataSet的语句 ds = new DataSet(); sda.Fill(ds);MessageBox。Show(”注册成功”, ”提示, MessageBoxButtons.O
14、K, MessageBoxIcon.Information); else MessageBox。Show(”注册失败!”, ”提示, MessageBoxButtons。OK, MessageBoxIcon。Information); textBox1.Clear(); textBox2。Clear(); textBox3。Clear(); textBox1.Focus(); mySqlConnection。Close(); private void button2_Click(object sender, EventArgs e) Form1 f1 = new Form1(); f1.Sho
15、w(); this.Hide(); 6.3 主页模块记录员用户通过点击项目或查询按钮可以进行分别进入项目或者查询界面,点击退出则退出系统代码设计:private void 项目成绩录入ToolStripMenuItem1_Click(object sender, EventArgs e) Form4 f4 = new Form4(); f4。Show(); this。Hide(); private void 项目成绩修改ToolStripMenuItem2_Click(object sender, EventArgs e) Form4 f4 = new Form4(); f4.Show();
16、this。Hide(); private void 项目成绩查询ToolStripMenuItem_Click(object sender, EventArgs e) Form5 f5 = new Form5(); f5。Show(); this.Hide(); private void 个人成绩查询ToolStripMenuItem_Click(object sender, EventArgs e) Form5 f5 = new Form5(); f5.Show(); this。Hide(); private void 退出系统ToolStripMenuItem_Click(object s
17、ender, EventArgs e) DialogResult dr = MessageBox。Show(this, 确认要退出吗?, ”退出确认, MessageBoxButtons。YesNo, MessageBoxIcon.Question); try if (dr = DialogResult。Yes) this.Close(); Application.Exit(); catch (Exception a) MessageBox.Show(”异常!没有选择”); 6。4 项目录入修改模块录入纪录成绩:录入纪录成绩是把每个比赛项目的纪录成绩插入表中,点击添加就可录入信息。修改成绩:选
18、定项目和编号就可修改成绩代码设计: static string connectionstring = server=localhost;database=leiliang;uid=sa;pwd= ”;SqlConnection mySqlConnection = new SqlConnection(connectionstring);DataSet ds = new DataSet();private void comonDataview() trySqlDataAdapter sda = new SqlDataAdapter(select * from programe ”, mySqlCo
19、nnection); DataSet ds = new DataSet(); sda。Fill(ds); dataGridView1。DataSource = ds.Tables0; catch (Exception ex) MessageBox.Show(错误 + ex.Message); private void Form4_Load(object sender, EventArgs e) comonDataview(); private void button1_Click(object sender, EventArgs e)DialogResult dr = MessageBox.S
20、how(this, 确认要添加吗?, ”添加确认”, MessageBoxButtons.YesNo, MessageBoxIcon.Question);try if (dr = DialogResult。Yes)if (comboBox1。Text = ” textBox1。Text = ” | textBox3。Text = | textBox4。Text = ”)MessageBox.Show(”输入有空白量录入失败!, 提示”, MessageBoxButtons.OK, MessageBoxIcon。Information);comboBox1.Text = ; textBox1。T
21、ext = ; textBox2。Text = ”; textBox3.Text = ; textBox4.Text = ; textBox1。Focus();elseSqlDataAdapter sda1 = new SqlDataAdapter(Select From program where 运动员编号=” + textBox1.Text + , mySqlConnection);/新建数据适配器 SqlCommandBuilder scb = new SqlCommandBuilder(sda1);/创建SqlCommandBuilder,可产生自动更新DataSet的语句DataS
22、et ds1 = new DataSet();sda1.Fill(ds1);/填充ds数据集if (ds1.Tables0。Rows。Count != 0) MessageBox。Show(有相同象录入失败!”, ”提示, MessageBoxButtons.OK, MessageBoxIcon.Information); comboBox1.Text=;textBox1.Text=;textBox2.Text=;textBox3。Text=; textBox4。Text = ”;textBox1。Focus(); else string sex = radioButton1。Checked
23、? radioButton1。Text : radioButton2.Text; mySqlConnection。Open(); SqlCommand cmd = mySqlConnection.CreateCommand();string InsertString = ”insert into Program values(+textBox1。Text+,”+comboBox1.Text+”,”+textBox2。Text+,”+textBox3。Text+, +sex+,”+ textBox4.Text+”)”; cmd。CommandText = InsertString; cmd.Ex
24、ecuteNonQuery(); MessageBox。Show(”录入成功”, 项目成绩录入”, MessageBoxButtons。OK, MessageBoxIcon。Information);mySqlConnection.Close();comonDataview();comboBox1.Text=”;textBox1。Text=”;textBox2。Text=”;textBox3。Text=”; textBox4。Text=”; catch (Exception a)MessageBox。Show(”异常!没有选择); private void button2_Click(obje
25、ct sender, EventArgs e) if (comboBox1.Text= ”|textBox1.Text= ” | textBox2.Text= ”)MessageBox.Show(输入有空白量!”, 项目成绩修改”, MessageBoxButtons.OK, MessageBoxIcon。Information);comboBox1。Text = ”; textBox1。Text = ”; textBox2.Text = ”;DialogResult dr = MessageBox.Show(this, ”确认要修改吗?”, 修改确认”, MessageBoxButtons.
26、YesNo, MessageBoxIcon。Question);tryif (dr = DialogResult.Yes) SqlDataAdapter sda2=new SqlDataAdapter(”Select * From Grade where运动员编号= +textBox1.Text+”and 项目编号=+comboBox1。Text+ ,mySqlConnection);/新建数据适配器SqlCommandBuilder scb = new SqlCommandBuilder(sda2);/创建SqlCommandBuilder,可产生自动更新DataSet的语句DataSet
27、ds2 = new DataSet();sda2。Fill(ds2);/填充ds数据集if (ds2。Tables0.Rows.Count != 0)mySqlConnection。Open();SqlCommand cmd =new SqlCommand(”update Grade set 成绩=+textBox2.Text+ where 项目=+comboBox1。Text+and 编号=”+textBox1.Text+”,mySqlConnection);cmd.ExecuteNonQuery();MessageBox.Show(修改成功, 项目成绩修改”, MessageBoxButt
28、ons。OK, MessageBoxIcon。Information);mySqlConnection.Close();comonDataview();comboBox1。Text=;textBox1。Text=;textBox2.Text=”;textBox3.Text=”; textBox4。Text = ”;elseMessageBox.Show(”没有修改对象”, 提示, MessageBoxButtons.OK, MessageBoxIcon.Information); comboBox1.Text=;textBox1。Text=”;textBox2。Text=”;textBox3。Text=”; textBox4。Text=;textBox1。Focus(); catch (Exception a) MessageBox。Show(异常!没有选择); private void button3_Click(object sender, EventArgs e) Form3 f3=new Form3(); f3。Show(); this。Hide();6。5查询模块运动员成绩:运动员成绩查询是以运动员姓名来查询,如果有该运动员则输出该运动员的所有比赛的成绩,如果不存在该运动员则不输出。项目成绩:项目成绩查询是以比赛项目来查询的,输入一个比赛项目输出参加该项目的所有人员
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1