赛事管理系统.docx

上传人:b****5 文档编号:11898857 上传时间:2023-04-08 格式:DOCX 页数:14 大小:284.39KB
下载 相关 举报
赛事管理系统.docx_第1页
第1页 / 共14页
赛事管理系统.docx_第2页
第2页 / 共14页
赛事管理系统.docx_第3页
第3页 / 共14页
赛事管理系统.docx_第4页
第4页 / 共14页
赛事管理系统.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

赛事管理系统.docx

《赛事管理系统.docx》由会员分享,可在线阅读,更多相关《赛事管理系统.docx(14页珍藏版)》请在冰豆网上搜索。

赛事管理系统.docx

赛事管理系统

第1章需求分析

根据数据库系统生存期的设计方法,从数据库应用系统和开发的全过程来考虑,将数据库应用系统设计分为以下几个阶段:

需求分析、概念设计、逻辑设计、物理设计。

1软件需求分析

1.1普通用户功能需求

要设计一个优秀的运动会赛事编排管理系统,就必须首先明确用户对系统的要求。

赛事编排管理系统的功能为:

方便用户报名参加比赛,查询个人赛项成绩。

普通用户是系统的服务对象,也是系统的主要参与者。

一个赛事编排管理系统的好坏主要是由普通用户来评判的。

因此,该系统需满足以下几方面需求:

1.用户管理:

目前可提供用户自定义报名。

2.成绩查询:

该用户可以对所有人、所有班级、比赛项目的成绩进行查询。

3.赛程查询:

对整个赛事的赛项进行查看,并得知赛项的详细内容,如比赛规则,参赛人数,比赛时间等。

1.2管理员功能需求

(1)管理员是一个软件系统的管理者,需要处理各种信息的增添、修改、删除,也要对用户的信息进行维护,在本软件中,管理员可以实现以下功能:

(2)查看赛事的信息。

(3)可删除和更新用户信息。

(4)能处理已存在用户报名参加比赛。

(5)可以对赛项进行编制处理和增删改。

(6)可以按模块中的内容精确查询。

(7)可以对赛项的赛程进行时间,分组等进行设置和增删改。

(8)可以对比赛选手进行增删改。

(9)可以对选手的成绩进行增删改。

(10)可以进行软件登陆身份验证。

2软件功能模块设计

2.1软件功能分析

通过对本系统功能的集中和分解,从内容结构上对软件功能进行如下划分:

注册录入用户数据到用户数据表,设置用户权限。

登录读取用户数据表,自动区分管理员与运动员,自动跳转到各自第一功能模块。

报名读取用户信息,用户先选择报名的赛事,选择分队、比赛项目。

在提交时对比当前服务器时间和赛事报名时间,若在报名时间内则判断报名项目个数。

报名数据保存在运动员数据表中。

否则报名失败。

成绩查询读取成绩数据表,显示用户所参加赛事名称及比赛项目的成绩、排名。

赛程查询读取用户所报项目,按一定规则限制条件进行查询。

可以分学号、姓名等进行查询。

赛事管理管理员添加赛事名称,确定报名时间及比赛(开始)时间。

提交时保存数据到赛事数据表,并提示进行赛程编排。

选手管理查询报名参与运动会运动员的学号,返回该运动员报名的具体信息,无匹配结果,则返回提示查无此人。

管理员可以对已报名的运动员信息进行删除与修改。

对运动员信息的修改与删除必须使用管理员的密码校验,防止非管理员恶意更改运动员信息。

此功能仅管理员可以使用,普通用户无法访问该页面。

赛程管理管理员可手动进行所有赛程编排、管理,也可以读取系统预设中的赛程表。

结果保存至赛程数据表中。

用户管理读取所需要普通用户的信息,管理员可以实现对普通用户一些基本资料的修改。

成绩录入选择赛事,显示所有比赛项目的前8名。

选择赛程,录入运动员的成绩保存至成绩数据表。

 

本系统包括的功能模块如图2-1-1所示:

 

图2-1-1系统业务流程图

 

2.2数据项分析

 

通过对系统功能模块的分析,设计数据项如下:

1.用户信息:

姓名、性别、学号、系别、赛事等级,参赛时间,赛事性质,

赛事名称。

2.赛项信息:

赛事ID、赛事名称、规则、赛事性质,赛事时间、报名时间,。

3.运动员信息:

参赛项目、报名时间、姓名、学号、系别、性别,修改参赛项目,赛事性质,比赛结果,比赛时间,修改比赛结果。

4.赛程信息:

赛事名称、参赛项目、赛事性质、比赛时间、参赛运动员。

5.成绩管理:

姓名、学号、性别、赛事名称、参赛项目、性质、排名。

6.管理员信息包括:

管理员账号,密码。

 

 

第二章-概念结构设计部分

图2.1

 

数据字典

实体:

管理员,用户,运动员

实体属性如下:

管理员:

录入成绩

用户:

姓名、性别、学号、系别

运动员:

姓名,学号,性别,系别,参赛性质,参赛项目,修改参赛项目

报名时间,参赛时间,比赛结果

第三章——逻辑结构设计

E-R图向关系模型的转换

用户(姓名、性别、学号、系别)

此为用户对应的关系模式。

运动员(姓名,学号,性别,系别,参赛性质,参赛项目,报名时间,

参赛时间,比赛结果)

此为运动员对应的关系模式。

包含赛事信息,个人信息。

管理员(参赛项目,比赛结果)

 

第四章--物理设计

从赛事系统中获得赛事前八名信息

use比赛系统

go

selecttop8*

from运动员信息.比赛结果

go

获得参赛总数

use比赛系统

go

selectcount(*)as参赛总数FROM用户信息.赛事名称

Go

运动员查询成绩

USE比赛系统

IF姓名!

=(SELECT姓名FROM运动员信息)

GOTOlabel1

BEGIN

PRINT‘该学号学生的成绩:

SELECT*FROM运动员信息WHERE学号=@学号

RETURN

END

label1:

PRINT‘该学号的学生成绩未进入前八名,仍需努力!

Return(select*from运动员信息where学号=@学号)

向运动员信息表添加主键pk-学号

ALTERTABLEdbo.运动员信息

ADD

CONSTRAINTPK_学号

PRIMARYKEY(学号)

运动员信息表的学号作为成绩管理表学号的外键(外键约束)

ALTERTABLE[运动员信息].[学号]

withCHECK

ADDCONSTRAINT[FK_运动员信息_学号_成绩管理_学号]

FOREIGNKEY([学号])

REFERENCES[运动员信息].[成绩管理]([学号])

检查报名时间(check约束)

CREATETABLE运动员信息

(报名时间datetime

CONSTRAINT检查报名时间

CHECK(运动员信息.报名时间<运动员信息.比赛时间)

创建比赛结果视图

createviewVIEW_比赛结果

as

select学号,姓名,比赛结果

from运动员信息

where运动员信息.学号in(用户信息.学号)

系统所涉及的主要计算机源程序:

1、运动员管理模块

protectedvoidButton7_Click(objectsender,EventArgse)

{

Response.Redirect("GL-Index.aspx");

}

protectedvoidBtcx_Click(objectsender,EventArgse)

{

if(TextBox1.Text.Length!

=11)

{

Label1.Text="请输入正确格式的学号!

";

Textxm.Text="";

lbxh.Text="";

Textxma.Text="";

Textxmb.Text="";

Textxmc.Text="";

Label3.Visible=false;

Lbxx.Text="";

}

else

{

SqlConnectionconn=newSqlConnection();

conn.ConnectionString=ConfigurationManager.ConnectionStrings["CtString"].ConnectionString;

SqlCommandcmdpd=newSqlCommand();

cmdpd.Connection=conn;

cmdpd.CommandText="selectcount(*)fromcansaiwhereXh='"+TextBox1.Text+"'";

SqlParametersppd=newSqlParameter("pd",SqlDbType.Char);

sppd.Direction=ParameterDirection.Input;

conn.Open();

sppd.Value=cmdpd.ExecuteScalar().ToString();

conn.Close();

if(sppd.Value.ToString()=="0")

{

Label1.Text="您输入的学号不存在,或者未注册!

";

Textxm.Text="";

lbxh.Text="";

Textxma.Text="";

Textxmb.Text="";

Textxmc.Text="";

Label3.Visible=false;

Lbxx.Text="";

 

}

else

{

SqlCommandcmdxh=newSqlCommand();

cmdxh.Connection=conn;

cmdxh.CommandText="selectXhfromcansaiwhereXh='"+TextBox1.Text+"'";

conn.Open();

lbxh.Text=cmdxh.ExecuteScalar().ToString();

conn.Close();

SqlCommandcmdxm=newSqlCommand();

cmdxm.Connection=conn;

cmdxm.CommandText="selectcsnamefromcansaiwhereXh='"+TextBox1.Text+"'";

conn.Open();

Textxm.Text=cmdxm.ExecuteScalar().ToString();

conn.Close();

SqlCommandcmdxma=newSqlCommand();

cmdxma.Connection=conn;

cmdxma.CommandText="selectXmafromcansaiwhereXh='"+TextBox1.Text+"'";

conn.Open();

Textxma.Text=cmdxma.ExecuteScalar().ToString();

conn.Close();

SqlCommandcmdxmb=newSqlCommand();

cmdxmb.Connection=conn;

cmdxmb.CommandText="selectXmbfromcansaiwhereXh='"+TextBox1.Text+"'";

conn.Open();

Textxmb.Text=cmdxmb.ExecuteScalar().ToString();

conn.Close();

SqlCommandcmdxmc=newSqlCommand();

cmdxmc.Connection=conn;

cmdxmc.CommandText="selectXmcfromcansaiwhereXh='"+TextBox1.Text+"'";

conn.Open();

Textxmc.Text=cmdxmc.ExecuteScalar().ToString();

conn.Close();

Label3.Visible=true;

Lbxx.Text="";

}

}

}

protectedvoidBtxg_Click(objectsender,EventArgse)

{

SqlConnectionconn=newSqlConnection();

conn.ConnectionString=ConfigurationManager.ConnectionStrings["CtString"].ConnectionString;

SqlCommandcmdjy=newSqlCommand();

cmdjy.Connection=conn;

cmdjy.CommandText="selectuserpasswordfromLoginwhereXh='"+Application["name"].ToString()+"'";

SqlParameterspjy=newSqlParameter("jy",SqlDbType.Char);

spjy.Direction=ParameterDirection.Input;

conn.Open();

spjy.Value=cmdjy.ExecuteScalar().ToString();

conn.Close();

if(Txjy.Text==spjy.Value.ToString())

{

if(Label3.Visible==true)

{

SqlCommandcmdxm=newSqlCommand();

cmdxm.Connection=conn;

cmdxm.CommandText="updatecansaisetcsname='"+Textxm.Text+"'whereXh='"+TextBox1.Text+"'";

conn.Open();

cmdxm.ExecuteScalar();

conn.Close();

SqlCommandcmdxma=newSqlCommand();

cmdxma.Connection=conn;

cmdxma.CommandText="updatecansaisetXma='"+Textxma.Text+"'whereXh='"+TextBox1.Text+"'";

conn.Open();

cmdxma.ExecuteScalar();

conn.Close();

SqlCommandcmdxmb=newSqlCommand();

cmdxmb.Connection=conn;

cmdxmb.CommandText="updatecansaisetXmb='"+Textxmb.Text+"'whereXh='"+TextBox1.Text+"'";

conn.Open();

cmdxmb.ExecuteScalar();

conn.Close();

SqlCommandcmdxmc=newSqlCommand();

cmdxmc.Connection=conn;

cmdxmc.CommandText="updatecansaisetXmc='"+Textxmc.Text+"'whereXh='"+TextBox1.Text+"'";

conn.Open();

cmdxmc.ExecuteScalar();

conn.Close();

 

Lbxx.Text="你个禽兽,修改成功!

";

}

else

{

Lbxx.Text="请先查询您需要修改的学号!

";

}

 

}

else

{

Lbxx.Text="密码错误!

";

}

 

}

 

protectedvoidBtsc_Click(objectsender,EventArgse)

{

SqlConnectionconn=newSqlConnection();

conn.ConnectionString=ConfigurationManager.ConnectionStrings["CtString"].ConnectionString;

SqlCommandcmdjy=newSqlCommand();

cmdjy.Connection=conn;

cmdjy.CommandText="selectuserpasswordfromLoginwhereXh='"+Application["name"].ToString()+"'";

SqlParameterspjy=newSqlParameter("jy",SqlDbType.Char);

spjy.Direction=ParameterDirection.Input;

conn.Open();

spjy.Value=cmdjy.ExecuteScalar().ToString();

conn.Close();

if(Txjy.Text==spjy.Value.ToString())

{

SqlCommandcmdsc=newSqlCommand();

cmdsc.Connection=conn;

cmdsc.CommandText="deletecansaiwhereXh='"+TextBox1.Text+"'";

conn.Open();

cmdsc.ExecuteScalar();

conn.Close();

Lbxx.Text="删除成功!

";

lbxh.Text="";

Textxm.Text="";

Textxma.Text="";

Textxmb.Text="";

Textxmc.Text="";

Label3.Visible=false;

 

}

else

{

Lbxx.Text="管理员密码错误!

";

}

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 药学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1