当前位置:文档之家› 运动会管理系统

运动会管理系统

南京师范大学 2015-2016学年第一学期《数据库系统课程设计》课程设计报告姓名:学号:班级:13专业:学院:指导教师:表单设计及数据提取题目:访问数据库提交日期:目录一、设计目的............................ 错误!未定义书签。

二、设计平台......................................... - 1 -三、试题内容......................................... - 1 -四、实验设计......................................... - 1 -4.1需求分析 ..................................... - 1 -4.2实验内容 ..................................... - 2 -4.2.1概念结构设计............................ - 2 -4.2.2逻辑结构设计............... 错误!未定义书签。

4.2.3数据库物理设计与实施.................... - 3 -4.2.4访问数据库.............................. - 8 -4.2.5数据库维护................. 错误!未定义书签。

五、参考文献........................................ - 10 -六、实验心得........................................ - 10 -一、设计目的数据库课程设计是在系统地学习了《数据库系统原理》课程后,按照关系型数据库的基本原理,综合运用所学的知识,完成一个数据库应用系统的设计全过程,包括需求分析、数据库设计、数据库建立、数据输入、应用系统的设计和开发、用户界面的设计和实现、系统安装和调试。

通过对一个实际问题的分析、设计与实现,将原理与应用相结合,学会如何把所学的知识用于解决实际问题。

二、设计平台SQL 2005WPS三、试题内容根据给定的“运动会管理系统”的需求分析,完成概念结构设计、逻辑结构设计、数据库的物理设计、数据库的访问和数据库维护等内容,并提交完整的课程设计报告。

四、实验设计4.1需求分析引入计算机管理运动会,运动可以在运动会管理系统中查询自己的比赛项目及比赛结果,裁判员或工作人员可以通过系统记录运动员各个比赛项目的成绩、进行成绩统计等。

运动会管理系统保存运动员、比赛项目以及不同类型的比赛的参数数据。

对于运动员来说:可以查看运动员所在代表队的名称、领队、本代表队的总积分、总名次;查看运动员参加比赛的项目、每个项目的成绩、积分等。

对于管理员来说:可以记录并查看运动员参加比赛项目的成绩、积分、名次;查看各代表队的总积分、总名次等。

运动会管理系统同主要管理对象有代表队、运动员、比赛项目等。

对于代表队,需要有代表队号、代表队的名称、领队、本代表队的总积分、总名次等属性;对于运动员需要有运动员号、姓名、年龄、性别等属性;对于比赛项目,需要有项目号、项目类别、项目名称、成绩单位等属性。

在运动会管理系统中,基本规定为:一个代表队包含多个运动员,一个运动员只能属于一个代表队;一个运动员可以参加多个比赛项目,一个比赛项目也可以被多个运动员参加;假设各个比赛项目结束后,按照成绩由高到低排出名次,并对前3名运动员给予相应的积分,如第1、2、3名分别积分为3分、2分、1分,而获得其他名次的运动员积分为0分,将代表队中所有成员的积分累加,得到各代表队总积分,将总积分由高到低排序,得到各个代表队的排名情况。

为简化系统需求,本系统只考虑代表队、运动员、比赛项目的关系,其他关系不考虑。

4.2实验内容4.2.1概念结构设计4.2.1.1抽象出实体,并画出各实体的E-R图;②分析各实体之间的联系及类型,设计运动会管理系统总体E-R图;4.2.2逻辑结构设计根据E-R 图,设计运动会管理数据库的关系模式。

(1)运动员(运动员号、姓名、年龄、性别);(2)代表队(代表队号、代表队的名称、领队、本代表队的总积分、总名次);(3)比赛项目(项目号,项目类别,项目名称,成绩单位);(4)参加(运动员号, 项目号,成绩,积分,名次)4.2.3数据库物理设计与实施(1)建立数据库建立“运动会管理系统”数据库,其初始大小为100MB,增长率为10%,数据文件和日志文件名分别为:“运动会管理系统_data”和“运动会管理系统_log”,存储路径为“D:\MSSQL.1\MSSQL\Data”文件夹下。

创建运动会数据库SQL代码如下:CREATE DATABASE运动会管理系统on(NAME=运动会管理系统_data,FILENAME=’D:\MSSQL.1\MSSQL\Data\运动会管理系统.mdf',SIZE=100MB,MAXSIZE=200MB,FILEGROWTH=10%)LOG ON(NAME=运动会管理系统_log,FILENAME='D:\MSSQL.1\MSSQL\Data\运动会管理系统.ldf',SIZE=1MB,MAXSIZE=20MB,FILEGROWTH=10%)GO(2)建立基本表①创建代表队表SQL代码:CREATE TABLE代表队表(代表队号CHAR(10)NOT NULL PRIMARY KEY,队名称CHAR(20)NOT NULL,领队CHAR(10)NOT NULL,总积分INT NOT NULL CHECK(总积分>=0),总名次INT NOT NULL CHECK(总名次>=0),)②创建运动员表SQL代码:CREATE TABLE运动员表(运动员号CHAR(6)NOT NULL PRIMARY KEY,姓名CHAR(10)NOT NULL,性别CHAR(10)NOT NULL CHECK(性别='男'or性别='女'),年龄Tinyint NOT NULL CHECK(年龄>1 and年龄<100),代表队号CHAR(10)NOT NULL,)③创建比赛项目表SQL代码:CREATE TABLE比赛项目(项目号CHAR(6)NOT NULL PRIMARY KEY,项目类别CHAR(10)NOT NULL,项目名称CHAR(20)NOT NULL,成绩单位CHAR(20)NOT NULL,)④创建比赛详情表SQL代码:CREATE TABLE比赛详情(运动员号CHAR(6)NOT NULL,项目号CHAR(6)NOT NULL,成绩Float,积分Tinyint CHECK(积分>= 0 ),名次Tinyint CHECK(名次>= 0 ),CONSTRAINT运动会管理系统_比赛详情_运动员号FOREIGN KEY(运动员号) REFERENCES运动员表(运动员号),CONSTRAINT运动会管理系统_比赛详情_项目号FOREIGN KEY(项目号) REFERENCES比赛项目(项目号),)(3)管理基本表(3-1) 向运动员表中增加“身高”列,其数据类型为整型。

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

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

alter table运动员表add constraint运动会管理系统_运动员表_身高check(身高>0)(3-4) 删除运动员表中的“身高”列。

alter table运动员表drop constraint运动会管理系统_运动员表_身高alter table运动员表drop column身高(4)使用Insert语句插入数据,各表中的数据如下:(4-1) 代表队表数据:insert into代表队表values('GLXY','管理学院','吴道福','7','2')insert into代表队表values('JSJXY','计算机学院','张鹏','6','3') insert into代表队表values('SXXY','数学学院','宋威','3','4')insert into代表队表values('WYXY','外语学院','王光明','8','1')(4-2) 运动员表数据:insert into运动员values('G11001','钱翔','男','14','GLXY') insert into运动员values('G11002','吴帆','男','16','GLXY') insert into运动员values('G11003','石乔乔','女','16','GLXY') insert into运动员values('G11004','张桂芳','女','19','GLXY') insert into运动员values('G11005','洪雪','女','18','GLXY') insert into运动员values('J11001','张月','女','19','JSJXY')insert into运动员values('J11002','田楠','男','18','JSJXY')insert into运动员values('J11003','赵恒博','男','18','JSJXY')insert into运动员values('J11004','徐铜铃','男','15','JSJXY')insert into运动员values('J11005','李明','男','16','JSJXY')insert into运动员values('S11001','崔天齐','男','18','SXXY') insert into运动员values('S11002','王尹','女','16','SXXY') insert into运动员values('S11003','刘冰洁','女','18','SXXY') insert into运动员values('S11004','杨中华','男','15','SXXY') insert into运动员values('S11005','李雪平','女','15','SXXY') insert into运动员values('W11001','叶星','男','18','WYXY') insert into运动员values('W11002','顾羽翔','男','16','WYXY') insert into运动员values('W11003','袁建明','男','15','WYXY') insert into运动员values('W11004','刘琼','女','17','WYXY') insert into运动员values('W11005','孟储强','男','19','WYXY') (4-3) 比赛项目表数据:insert into比赛项目values('JS001M','径赛','男子米','秒') insert into比赛项目values('JS002W','径赛','女子米','分钟')insert into比赛项目values('TS001M','田赛','男子三级跳远','米')insert into比赛项目values('TS002W','田赛','女子铅球','米')(4-4) 比赛详情表数据insert into比赛详情values('S11001','JS001M','12.91','3','1')insert into比赛详情values('J11005','JS001M','13.15','2','2')insert into比赛详情values('J11002','JS001M','13.19','1','3')insert into比赛详情values('S11004','JS001M','13.55','0','4')insert into比赛详情values('W11004','JS002W','1.24','3','1')insert into比赛详情values('J11001','JS002W','1.25','2','2')insert into比赛详情values('G11004','JS002W','1.32','1','3')insert into比赛详情values('G11003','JS002W','2.02','0','4')insert into比赛详情values('W11005','TS001M','5.47','3','1')insert into比赛详情values('W11002','TS001M','5.15','2','2')insert into比赛详情values('J11003','TS001M','5.11','1','3')insert into比赛详情values('S11004','TS001M','4.98','0','4')insert into比赛详情values('G11004','TS002W','5.72','3','1')insert into比赛详情values('G11003','TS002W','5.38','2','2')insert into比赛详情values('G11005','TS002W','5.21','1','3')insert into比赛详情values ('W11004','TS002W','5.02','0','4')(5)建立和管理视图(5-1) 生成一张“项目类别”为“田赛”的视图,并将该视图命名为“田赛项目”。

相关主题