欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    田径运动会管理系统的设计与实现.doc

    • 资源ID:35158088       资源大小:126.50KB        全文页数:15页
    • 资源格式: DOC        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    田径运动会管理系统的设计与实现.doc

    课程设计报告田径运动会管理系统的设计与实现课 程 数据库原理及应用 班 级 学 号 指导教师 时间: 2012 年 5 月 25 日 至 2012 年 6 月 1日 指导教师对课程设计(论文)的评语(工作态度、任务完成情况、能力水平、设计说明书(论文)的撰写和图纸质量等):成绩 指导教师签字 年 月 日目 录第一章 开发背景3第二章 功能描述4第三章 业务流程分析5第四章 数据流程分析64.1 数据流程图64.2 数据字典6第五章 概念模型设计8第六章 逻辑模型设计和优化10第七章 物理设计和实施11第八章 系统测试13第九章 课程设计心得体会24参考文献25第一章 开发背景计算机以其强大的性能价格优势给人们的工作、学习和生活带来极大的方便计算机代替人工处理一些事务已成为必然。整个人类社会已进入高度信息化,人们对信息和数据的利用和处理已经进入自动化、网络化和社会化的阶段。如在查找资料、处理日常办公事务、科研生产等方面,无不需要利用大量的信息资源。因此,如何有效地进行数据信息的管理和利用,已经成为人们普遍关注的课题。在当今社会上,体育运动越来越普及,参与运动会的人越来越多,素质越来越高。传统的运动会,一般是以人手组织为主,运动员的报名、赛事的安排、比赛场地的安排和成绩的记录等操作全都由人手操作,参加人数越多,运动会的规模就越大,管理工作就更加费时费力,而且容易出错。学校田径运动会管理系统则为组织者提供一个简捷方便的方式来组织管理运动会,学校田径运动会管理系统是一种“人机交互系统”,通过简单的键盘输入与鼠标点击来完成烦琐的记录与安排工作,保证运动会的正常流畅的进行。学校田径运动会管理系统是典型的数据库应用系统,可完成田径运动会管理中的运动员报名、分组编排,竞赛成绩处理及公告,成绩统计信息查询等事务处理功能。根据学校田径运动会的一般进程,本系统分为前期编排处理、比赛管理处理、查询输出处理和系统维护等四个工具模块来完成所期望的功能。依据关系型数据库理论设计数据库的结构。使用该系统可以极大地减小工作人员的劳动量,同时还可大大提高工作效率、可靠性和正确性。第二章 功能描述 1.用户管理 对进入系统的用户进行管理,可以查询、添加、删除用户,还可以修改用户的用户名和密码。 2.报名 填写自己的个人信息,选择参加的比赛项目。 3.运动员信息管理 可查看所有运动员的所有信息,还可以添加、修改、删除运动员的各种信息。 4.比赛项目管理 可查看所有的比赛项目,还可以对其进行添加、修改、删除。 5.成绩管理 可查看所有运动员的各项成绩,并可对成绩进行添加、修改、删除。 6.打印 可打印各项成绩,团体总分表,奖牌榜,破纪录情况表等。 7.运动员界面 运动员可使用自己的用户名和密码登陆系统,之后可通过自己的信息来查询自己各个比赛项目的成绩,还可以修改自己的密码。第三章 业务流程分析业务流程图如图所示图3-1。田径运动会信息管理系统管理员界面运动员界面 用户管理比赛项目管理成绩管理打印运动员信息管理查询成绩,修改密码 图3-1业务流程图第四章 数据流程分析4.1 数据流程图数据流程如图4-1所示。主 数据库报 名运动员信息比赛成绩比赛管理 名次各种信息查询输出用户信息系统 图4-1 数据流程图 4.2 数据字典(1)数据流的描述数据流编号: D001数据流名称: 成绩信息简述:运动员的比赛成绩数据流来源:运动员数据流去向:运动员信息判断数据流组成:编号+姓名等数据流量:1000/天高峰流量:3000/天数据流编号: D002数据流名称: 成绩信息无效提示简述:管理员发现非运动员时的提示信息数据流来源:运动员信息判断数据流去向:运动员数据流组成:编号+姓名等数据流量:100/天高峰流量:500/天(2)处理逻辑的描述处理逻辑编号:P001处理逻辑名称:运动员信息判断简述:判断运动员信息的合法性输入的数据流:成绩信息处理描述: 根据运动员提供的个人信息,验证运动员信息,验证通过则继续查看是否有运动员的比赛记录,验证不通过则返回给运动员信息指明为非运动员。输出的数据流: D001运动员信息、D002无效提示信息处理频率: 10次/天处理逻辑编号:P002处理逻辑名称:比赛成绩查询简述:查询运动员的比赛成绩输入的数据流:D001成绩信息处理描述:根据运动员提供的个人信息,查找是否有该运动员的比赛记录,有则进行成绩输出,如没有则返回该运动员无比赛成绩。输出的数据流: D001成绩信息+D003比赛项目信息处理频率: 1000次/天(3)数据存储的描述数据存储编号:F001数据存储名称:运动员信息简述:运动员的基本信息数据存储组成:编号+姓名+性别+比赛项目+代表队关键字:编号相关联的处理:P001数据存储编号:F002数据存储名称:比赛项目信息简述:比赛的所有项目数据存储组成:项目编号+项目名称+项目类型+跑道类型+记录关键字:项目编号相关联的处理:P002,P003,P005(4)外部实体的描述外部实体编号:S001外部实体名称:运动员简述:参加比赛的人输入的数据流:D002,D003输出的数据流:D001第五章 概念模型设计(1) 运动员实体E-R图运动员实体E-R图如图5-1所示。运动员编号姓名代表队比赛项目性别 图5-1运动员实体E-R图 (2) 比赛项目实体E-R图 比赛项目实体E-R图如图5-2所示。比赛项目记录跑道类型项目类型项目名称项目编号 图5-2比赛项目实体E-R图 (3) 比赛成绩实体E-R图 比赛成绩实体E-R图如图5-3所示。比赛成绩破记录名次项目名称成绩姓名 图5-3 比赛成绩实体E-R图 (4) 运动会系统实体E-R图 运动会系统实体E-R图如图5-4所示。项目类型项目名称项目编号项 目n跑道类型记录名 次比赛成绩比 赛m项目编号破记录编号姓名运动员代表队性别图5-4运动会系统实体E-R图第六章 逻辑模型设计和优化(1)运动员信息表表1 运动员信息表编号姓名性别比赛项目代表队Char(10)Char(20)Char(10)Char(20)Char(20) (2)比赛项目表表2比赛项目表项目编号项目名称项目类型跑道类型记录Char(10)Char(20)Char(10)Char(10)Char(20) (3)比赛成绩表表3比赛成绩表姓名项目名称成绩名次破记录Char(20)Char(20)Char(20)Char(10)Char(10) (4)用户信息表表4用户信息表姓名密码Char(20)Char(20)第七章 物理设计和实施得到系统逻辑模型后,就该进行数据库的物理设计和实施数据库了,物理设计主要是要确定数据库的存储路径、存储结构以及如何建立索引等,可以采用系统的默认设置。数据库实施主要包括在具体的DBMS中创建数据库和表的过程,本设计所选用的DBMS为SQL SERVER2005,有关创建数据库和关系表的SQL语句如下所示:(1) 创建数据库CREATE DATABASE 田径运动会管理系统(2) 创建数据库表/*创建用户信息表*/CREATE TABLE 用户信息表(用户 Char(20) NOT NULL, 密码Char(20) NOT NULL,/*创建运动员信息表*/CREATE TABLE 运动员信息表(编号 Char(20)Primary NOT NULL, 姓名 Char(20) NOT NULL,性别 Char(10) NOT NULL,比赛项目1 Char(20) NOT NULL,比赛项目2 Char(20) NOT NULL,比赛项目3 Char(20) NOT NULL,比赛项目4 Char(20) NOT NULL,代表队Char(20) NOT NULL,/*创建比赛项目表*/CREATE TABLE 比赛项目表(姓名Char(10)Primary NOT NULL, 项目名称Char(20) NOT NULL,项目类型Char(10) NOT NULL,跑道类型Char(10) NOT NULL,记录Char(20) NOT NULL,/*创建比赛成绩表*/CREATE TABLE 比赛成绩表(姓名 Char(20)Primary NOT NULL, 项目名称Char(20) NOT NULL,成绩Char(20) NOT NULL,名次Char(10) NOT NULL,破记录Char(10) NULL,/*创建管理员*/CREATE TABLE 管理员 (用户 Char(20) NOT NULL, 密码Char(20) NOT NULL,第八章 系统测试 1.系统登录 登录界面如图8-1所示。 图8-1登录界面 对应代码: private void button1_Click(object sender, EventArgs e) try if (txtUserName.Text = "") /判断用户是否输入了用户名 MessageBox.Show("用户名不能为空"); else if (txtPwd.Text = "") MessageBox.Show("密码不能为空"); /判断用户是否输入了密码 else SqlConnection con = DBOcn.createCon();/创建数据库连接 con.Open(); if (comboBox1.Text = "运动员") SqlCommand cmd = new SqlCommand("select count(*) from 用户信息表 where 用户='" + txtUserName.Text + "' and 密码='" + txtPwd.Text + "'", con); int i = Convert.ToInt32(cmd.ExecuteScalar(); if (i > 0) this.Hide(); Form3 M = new Form3(); M.Show(); Form N = new Form(); N.Close(); else MessageBox.Show("用户名或者密码错误,请重新输入!"); txtUserName.Clear(); txtPwd.Clear(); txtUserName.Focus(); else if (comboBox1.Text = "管理员") SqlCommand cmd = new SqlCommand("select count(*) from 管理员 where 用户='" + txtUserName.Text + "' and 密码='" + txtPwd.Text + "'", con); int i = Convert.ToInt32(cmd.ExecuteScalar(); if (i > 0) this.Hide(); Form4 M = new Form4(); M.Show(); Form N = new Form(); N.Close(); else MessageBox.Show("用户名或者密码错误,请重新输入!"); txtUserName.Clear(); txtPwd.Clear(); txtUserName.Focus(); else MessageBox.Show("请选择登录界面"); catch (Exception ex) MessageBox.Show(ex.ToString(); private void txtPwd_KeyPress(object sender, KeyPressEventArgs e) if (e.KeyChar = 13) /判断是否按下Enter键 button1_Click(sender, e); /调用“登录”按钮的Click事件2.报名 报名界面如图8-2所示。 图8-2报名界面对应代码: private void 提交_Click(object sender, EventArgs e) string s; SqlConnection con = DBOcn.createCon(); con.Open();/在原表中新建一个新行,然后再数据添加到新行中 SqlCommand cmd = new SqlCommand("insert into 运动员信息表(编号,姓名,性别,比赛项目1,比赛项目2,比赛项目3,比赛项目4,代表队)", con); cmd.Parameters.Add("编号", SqlDbType.Char, 20).Value = textBox1.Text; cmd.Parameters.Add("姓名", SqlDbType.Char, 20).Value = textBox2.Text; cmd.Parameters.Add("代表队", SqlDbType.Char, 20).Value = textBox3.Text; if (radioButton1.Checked = true) s = "男" cmd.Parameters.Add("性别", SqlDbType.Char, 2).Value = s; if (radioButton2.Checked = true) s = "女" cmd.Parameters.Add("性别", SqlDbType.Char, 2).Value = s; cmd.Parameters.Add("比赛项目1", SqlDbType.Char, 10).Value = comboBox1.Text; cmd.Parameters.Add("比赛项目2", SqlDbType.Char, 40).Value = comboBox2.Text; cmd.Parameters.Add("比赛项目3", SqlDbType.Char, 20).Value = comboBox3.Text; cmd.Parameters.Add("比赛项目4", SqlDbType.Char, 20).Value = comboBox4.Text; cmd.Connection = con; cmd.ExecuteNonQuery(); con.Close(); SqlDataAdapter sda = new SqlDataAdapter("select 编号 as 编号,姓名 as 姓名,性别 as 性别,比赛项目1 as 比赛项目1,比赛项目2 as 比赛项目2,比赛项目3 as 比赛项目3,比赛项目4 as 比赛项目4,代表队 as 代表队 ", con); DataSet ds = new DataSet(); sda.Fill(ds, "table"); this.textBox1.Enabled = false; MessageBox.Show("报名成功!"); private void comboBox1_DropDown(object sender, EventArgs e) string str = "跳远(男)", "跳高(男)", "男子100米", "男子200米", "男子400米", "男子800米", "男子110米栏" ,"男子 4×100米接力" , "跳远(女)" ,"跳高(女)" ,"女子100米" ,"女子200米" ,"女子400米","女子800米","女子100米栏" ,"女子4×100米接力" if (radioButton1.Checked = true) comboBox1.Items.Clear(); for (int i = 0; i < 8; i+) comboBox1.Items.Add(stri); if (radioButton2.Checked = true) comboBox1.Items.Clear(); for (int i = 8; i < 16; i+) comboBox1.Items.Add(stri); private void comboBox2_DropDown(object sender, EventArgs e) string str = "跳远(男)", "跳高(男)", "男子100米", "男子200米", "男子400米", "男子800米", "男子110米栏", "男子 4×100米接力", "跳远(女)", "跳高(女)", "女子100米", "女子200米", "女子400米", "女子800米", "女子100米栏", "女子4×100米接力" ; if (radioButton1.Checked = true) comboBox1.Items.Clear(); for (int i = 0; i < 8; i+) comboBox1.Items.Add(stri); if (radioButton2.Checked = true) comboBox1.Items.Clear(); for (int i = 8; i < 16; i+) comboBox1.Items.Add(stri); private void comboBox3_DropDown(object sender, EventArgs e) string str = "跳远(男)", "跳高(男)", "男子100米", "男子200米", "男子400米", "男子800米", "男子110米栏", "男子 4×100米接力", "跳远(女)", "跳高(女)", "女子100米", "女子200米", "女子400米", "女子800米", "女子100米栏", "女子4×100米接力" ; if (radioButton1.Checked = true) comboBox1.Items.Clear(); for (int i = 0; i < 8; i+) comboBox1.Items.Add(stri); if (radioButton2.Checked = true) comboBox1.Items.Clear(); for (int i = 8; i < 16; i+) comboBox1.Items.Add(stri); private void comboBox4_DropDown(object sender, EventArgs e) string str = "跳远(男)", "跳高(男)", "男子100米", "男子200米", "男子400米", "男子800米", "男子110米栏", "男子 4×100米接力", "跳远(女)", "跳高(女)", "女子100米", "女子200米", "女子400米", "女子800米", "女子100米栏", "女子4×100米接力" ; if (radioButton1.Checked = true) comboBox1.Items.Clear(); for (int i = 0; i < 8; i+) comboBox1.Items.Add(stri); if (radioButton2.Checked = true) comboBox1.Items.Clear(); for (int i = 8; i < 16; i+) comboBox1.Items.Add(stri); private void button1_Click(object sender, EventArgs e) this.Close(); Form1 f = new Form1(); f.Show(); 3.运动员界面 运动员界面如图8-3所示。图8-3运动员界面对应代码: private void show() this.textBox1.Text = this.dataGridView1.CurrentRow.Cells0.Value.ToString();this.textBox2.Text = this.dataGridView1.CurrentRow.Cells1.Value.ToString(); this.textBox3.Text = this.dataGridView1.CurrentRow.Cells2.Value.ToString(); this.textBox4.Text = this.dataGridView1.CurrentRow.Cells3.Value.ToString(); this.textBox5.Text = this.dataGridView1.CurrentRow.Cells4.Value.ToString(); this.textBox6.Text = this.dataGridView1.CurrentRow.Cells5.Value.ToString(); this.textBox7.Text = this.dataGridView1.CurrentRow.Cells6.Value.ToString(); this.textBox8.Text = this.dataGridView1.CurrentRow.Cells7.Value.ToString(); this.textBox9.Text = this.dataGridView1.CurrentRow.Cells8.Value.ToString(); this.textBox10.Text = this.dataGridView1.CurrentRow.Cells9.Value.ToString(); catch (Exception ex) MessageBox.Show("不能对列进行排序"); private void button1_Click(object sender, EventArgs e) if (textBox1.Text = "" && textBox2.Text = "") return; if (textBox1.Text != "" && textBox2.Text = "") SqlConnection con = DBOcn.createCon();SqlDataAdapter sda = new SqlDataAdapter("select 编号 as 编号,姓名 as 姓名,性别 as 性别,比赛项目1 as 比赛项目1,比赛项目2 as 比赛项目2,比赛项目3as 比赛项目3,比赛项目4 as 比赛项目4,代表队 as 代表队 from 运动员信息表 where 编号 like'" + textBox1.Text + "%'", con); DataSet ds = new DataSet(); sda.Fill(ds, "table"); this.dataGridView1.DataSource = ds.Tables0.DefaultView; try /有时找不到匹配的记录,有异常 show(); catch (Exception ex) /对异常进行处理 MessageBox.Show("没有找到匹配的记录"); return; if (textBox1.Text = "" && textBox2.Text != "") SqlConnection con = DBOcn.createCon(); SqlDataAdapter sda = new SqlDataAdapter("select 编号 as 编号,姓名 as 姓名,性别 as 性别,比赛项目1 as 比赛项目1,比赛项目2 as 比赛项目2,比赛项目3as 比赛项目3,比赛项目4 as 比赛项目4,代表队 as 代表队 from 运动员信息表 where 姓名 like'" + textBox2.Text + "%'", con); DataSet ds = new DataSet(); sda.Fill(ds, "table"); this.dataGridView1.DataSource = ds.Tables0.DefaultView; try /有时找不到匹配的记录,有异常 show(); catch (Exception ex) /对异常进行处理 MessageBox.Show("没有找到匹配的记录"); return; if (textBox1.Text != "" && textBox2.Text != "") SqlConnection con = DBOcn.createCon(); SqlDataAdapter sda = new SqlDataAdapter("select 编号 as 编号,姓名 as 姓名,性别 as 性别,比赛项目1 as 比赛项目1,比赛项目2 as 比赛项目2,比赛项目3as 比赛项目3,比赛项目4 as 比赛项目4,代表队 as 代表队 from 运动员信息表 where 编号 like'" + textBox1.Text + "%' and 姓名 like'" + textBox2.Text + "%'", con); DataSet ds = new DataSet(); sda.Fill(ds, "table"); this.dataGridView1.DataSource = ds.Tables0.DefaultView; try /有时找不到匹配的记录,有异常 show(); catch (Exception ex) /对异常进行处理 MessageBox.Show("没有找到匹配的记录"); return; private void button2_Click(object sender, EventArgs e) Form5 f = new Form5(); f.Show(); this.Hide(); private void button3_Click(object

    注意事项

    本文(田径运动会管理系统的设计与实现.doc)为本站会员(叶***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开