运动会管理系统 1Word下载.docx

上传人:b****5 文档编号:17437132 上传时间:2022-12-01 格式:DOCX 页数:27 大小:956.66KB
下载 相关 举报
运动会管理系统 1Word下载.docx_第1页
第1页 / 共27页
运动会管理系统 1Word下载.docx_第2页
第2页 / 共27页
运动会管理系统 1Word下载.docx_第3页
第3页 / 共27页
运动会管理系统 1Word下载.docx_第4页
第4页 / 共27页
运动会管理系统 1Word下载.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

运动会管理系统 1Word下载.docx

《运动会管理系统 1Word下载.docx》由会员分享,可在线阅读,更多相关《运动会管理系统 1Word下载.docx(27页珍藏版)》请在冰豆网上搜索。

运动会管理系统 1Word下载.docx

根据E-R图,设计运动会管理数据库的关系模式。

(1)、运动员(运动员号,姓名,年龄,性别);

(2)、代表队(代表队号,队名称,领队,总积分,总名次);

(3)、比赛项目(项目号,项目类别,项目名称,成绩单位);

(4)、参加(运动员号,项目号,成绩,积分,名次)。

4.数据库物理设计与实现

(1)建立“运动会管理系统”数据库

其初始大小为100MB,增长率为10%,数据文件和日志文件名分别为:

“运动会管理系统_data”和“运动会管理系统_log”,存储路径为“E:

\data”文件夹下。

创建运动会数据库SQL代码如下:

CREATEDATABASE运动会管理系统--创建数据库

ON(

NAME=运动会管理系统1_data,--主数据文件的逻辑名

FILENAME='

E:

\data\运动会管理系统.mdf'

--主数据文件的物理名

SIZE=100MB,--初始大小

MAXSIZE=200MB,

FILEGROWTH=10%--增长率

LOGON(

NAME=运动会管理系统1_log,--日志文件的逻辑名

\data\运动会管理系统.ldf'

--日志文件的物理名

SIZE=1MB,

MAXSIZE=20MB,

FILEGROWTH=10%

GO

(2)建立基本表

①创建代表队表

创建代表队表SQL代码:

CREATETABLE代表队

代表队号CHAR(10)NOTNULLPRIMARYKEY,

队名称CHAR(20)NOTNULL,

领队CHAR(10)NOTNULL,

总积分INTNOTNULLCHECK(总积分>

=0),

总名次INTNOTNULLCHECK(总名次>

②创建运动员表

创建运动员表SQL代码:

CREATETABLE运动员

运动员号CHAR(6)NOTNULLPRIMARYKEY,

姓名CHAR(10)NOTNULL,

性别CHAR(10)NOTNULLCHECK(性别='

男'

or性别='

女'

),

年龄TinyintNOTNULLCHECK(年龄>

1and年龄<

100),

代表队号CHAR(10)NOTNULL,

③创建比赛项目表

创建比赛项目表SQL代码:

CREATETABLE比赛项目

项目号CHAR(6)NOTNULLPRIMARYKEY,

项目类别CHAR(10)NOTNULL,

项目名称CHAR(20)NOTNULL,

成绩单位CHAR(20)NOTNULL,

④创建比赛详情表

创建比赛详情表SQL代码:

CREATETABLE比赛详情

运动员号CHAR(6)NOTNULL,

项目号CHAR(6)NOTNULL,

成绩Float,

积分TinyintCHECK(积分>

=0),

名次TinyintCHECK(名次>

CONSTRAINT运动会管理系统_比赛详情_运动员号FOREIGNKEY(运动员号)REFERENCES运动员(运动员号),

CONSTRAINT运动会管理系统_比赛详情_项目号FOREIGNKEY(项目号)REFERENCES比赛项目(项目号),

(3)管理基本表

(3-1)向运动员表中增加“身高”列,其数据类型为整型。

SQL代码:

altertable运动员add身高INTNULL

原运动员表:

增加了身高列:

(3-2)将运动员表中的“身高”的数据类型改为浮点型。

altertable运动员altercolumn身高float

(3-3)为运动员表中的“身高”属性增加取值必须大于0的约束条件。

altertable运动员addconstraint运动会管理系统_运动员_身高check(身高>

0)

(3-4)删除运动员表中的“身高”列。

altertable运动员dropconstraint运动会管理系统_运动员_身高

altertable运动员dropcolumn身高

身高列已删除:

(4)使用Insert语句插入数据,各表中的数据如下:

(4-1)代表队表数据

代表队

insertinto代表队values('

GLXY'

'

管理学院'

吴道福'

7'

2'

insertinto代表队values('

JSJXY'

计算机学院'

张鹏'

6'

3'

SXXY'

数学学院'

宋威'

4'

WYXY'

外语学院'

王光明'

8'

1'

打开代表队表:

(4-2)运动员表数据

insertinto运动员values('

G11001'

钱翔'

'

14'

G11002'

吴帆'

16'

G11003'

石乔乔'

G11004'

张桂芳'

19'

G11005'

洪雪'

18'

J11001'

张月'

J11002'

田楠'

J11003'

赵恒博'

J11004'

徐铜铃'

15'

J11005'

李明'

S11001'

崔天齐'

S11002'

王尹'

S11003'

刘冰洁'

S11004'

杨中华'

S11005'

李雪平'

W11001'

叶星'

W11002'

顾羽翔'

W11003'

袁建明'

W11004'

刘琼'

17'

W11005'

孟储强'

打开运动员表:

(4-3)比赛项目表数据

insertinto比赛项目values('

JS001M'

径赛'

男子米'

秒'

JS002W'

女子米'

分钟'

TS001M'

田赛'

男子三级跳远'

米'

TS002W'

女子铅球'

打开比赛项目表:

(4-4)比赛详情表数据

insertinto比赛详情values('

12.91'

13.15'

13.19'

13.55'

0'

1.24'

1.25'

1.32'

2.02'

5.47'

5.15'

5.11'

4.98'

5.72'

5.38'

5.21'

5.02'

打开比赛详情表:

(5)建立和管理视图

(5-1)生成一张“项目类别”为“田赛”的视图,并将该视图命名为“田赛项目”。

createview田赛项目asselect*from比赛项目where项目类别='

打开田赛项目视图:

(5-2)生成一张“项目类别”为“径赛”的视图,并将该视图命名为“径赛项目”。

createview径赛项目asselect*from比赛项目where项目类别='

打开径赛项目视图:

(6)建立和管理索引

(6-1)为运动员表中的“姓名”建立次索引。

createindexsportnameon运动员(姓名)

(6-2)为项目表中的“项目类别”建立次索引。

createindexclassificationon比赛项目(项目类别)

5.数据库访问

数据查询:

(1)查询姓名为“杨中华”的运动员的运动员号和所在的代表队号。

select运动员.运动员号,运动员.代表队号

from运动员

where姓名='

(2)查询代表队号为“JSJXY”的所有成员姓名。

select姓名from运动员where代表队号='

(3)统计项目名称为“男子100米”比赛的参赛运动员名称、年龄、项目号、项目名称、成绩,并按成绩由高到低排列。

select运动员.姓名,运动员.年龄,比赛详情.项目号,比赛项目.项目名称,比赛详情.成绩

from运动员,比赛详情,比赛项目

where比赛详情.项目号=比赛项目.项目号and运动员.运动员号=比赛详情.运动员号and项目名称='

orderby比赛详情.成绩desc

(4)查询“杨中华”参加的比赛项目的情况。

select运动员.姓名,比赛详情.运动员号,比赛详情.项目号,比赛项目.项目名称,比赛详情.成绩,比赛详情.积分,比赛详情.名次

from运动员,比赛项目,比赛详情

where比赛详情.项目号=比赛项目.项目号and运动员.运动员号=比赛详情.运动员号and姓名='

(5)列出运动员号为“G1104”的运动员的所有的个人信息及比赛信息。

select比赛详情.运动员号,运动员.姓名,运动员.性别,运动员.年龄,

运动员.代表队号,比赛详情.项目号,比赛项目.项目类别,

比赛项目.项目名称,比赛详情.成绩,比赛详情.积分,比赛详情.名次from运动员,比赛项目,比赛详情

where比赛详情.项目号=比赛项目.项目号and运动员.运动员号=比赛详情.运动员号and运动员.运动员号='

(6)统计代表队号为“JSJXY”的参加比赛的各个运动员的积分情况,并且按积分由大到小的顺序排序。

select比赛详情.运动员号,运动员.姓名,比赛详情.积分

from运动员,比赛详情

where运动员.运动员号=比赛详情.运动员号and运动员.代表队号='

orderby比赛详情.积分

desc

(7)统计所有比赛项目中,同一个运动员号的运动员的积分情况。

Select运动员.运动员号,运动员.姓名,比赛项目.项目号,比赛详情.积分

where比赛项目.项目号=比赛详情.项目号

and比赛详情.运动员号=运动员.运动员号

(8)查询个人总积分大于等于3的运动员的情况。

Select运动员.运动员号,运动员.姓名,运动员.性别,运动员.年龄,运动员.代表队号

where运动员.运动员号=比赛详情.运动员号

and比赛详情.积分>

=3

数据更新:

(1)增加一名新的运动员,要求运动员号:

S11006;

姓名:

王林;

性别:

男;

年龄:

17;

代表队号:

SXXY。

insertinto运动员(运动员号,姓名,性别,年龄,代表队号)

values('

S11006'

王林'

原来未增加运动员的运动员表:

增加了运动员的运动员表:

(2)将“王林”的年龄更新为16。

update运动员set年龄='

where姓名='

原来‘王林’的年龄为16,年龄家1后为17:

(3)将运动员号为“S11006”的运动员的代表队号更新为“GLXY”。

update运动员set代表队号='

where运动员号='

修改前运动员号为‘S11006’的运动员队号为:

SXXY,

修改后为‘GLXY’:

(4)将所有运动员的年龄加1。

update运动员set年龄=年龄+1

年龄增加前后运动员表年龄对比表:

(5)由于测算问题,需要将项目号为“TS001M”的比赛成绩全部减少0.5米。

update比赛详情set成绩=成绩-0.5where项目号='

项目号为‘TS001M’的成绩减少前后对比表:

(6)删除运动员号为“S1106”的运动员信息。

Deletefrom运动员where运动员号='

删除后的运动员表:

(运动员号为:

S1106的王林运动员已被删除)

6.数据库备份

(1)使用SQL语句备份数据库

(1-1)创建备份设备

EXECsp_addumpdevice'

DISK'

mybackup1'

'

D:

\sql\mybackup'

(1-2)备份数据库

BACKUPDATABASE运动会管理系统ToDISK='

\sql\运动会管理系统.BAK'

5、课程设计小结:

通过这学期对SQL 

Server2005的实践设计,结合本学期对SQL 

Server2005的学习,使我较为熟练的掌握了SQL 

Server2005的使用。

 

这很大部分是老师的功劳。

这次我设计了一个“运动会管理系统”的数据库。

通过本次的试验,我基本掌握了设计一个数据库的方法。

在这次课程设计中,我体会了专注地工作的滋味。

翻书本,搜资源,请教老师和同学,循序渐进,一边做设计,一边学习到了设计之外的东西。

凡事要耐心专心,这样,事情就可以做好。

在做设计的时候,是一个学习认识的过程,在这个过程中,我受到了很多启发,获益菲浅。

由于我对编程和SQL语句的不熟悉,在这方面遇到了不少问题,不过老师将上次所设计的“图书管理系统”数据库的代码发给了我们,在代码上给了我很大的帮助。

由于自己知识的不足,在设计数据库时出现了不少大大小小的问题。

一个小小的、不经意的错误都可以让你百思不得其解。

这就要求我们在做课程设计时一定要小心又小心,千万不能有一丝的马虎。

一个极小的错误足让你所有的心血化为乌有。

另外,在这次的课程设计中,我得到了老师和同学的热心帮助,在此要感谢老师和同学。

很多时候,同学间的互助是较为直接和快捷的。

同学之间还可以互相讨论,研究。

许多的问题就是这样发现和得以解决的,也因此,我们同学间的合作更加紧密了。

六、主要参考文献:

1、《软件工程及实践》,电子工业出版社,窦万峰,郑阿奇。

2、《数据库技术与应用》,清华大学出版社,顾斌。

3、《数据库系统原理教程》,清华大学出版社,王珊、陈虹;

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

当前位置:首页 > 解决方案 > 商业计划

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

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