数据库设计实例运动会管理系统

上传人:软*** 文档编号:170905426 上传时间:2022-11-23 格式:DOCX 页数:12 大小:37.30KB
返回 下载 相关 举报
数据库设计实例运动会管理系统_第1页
第1页 / 共12页
数据库设计实例运动会管理系统_第2页
第2页 / 共12页
数据库设计实例运动会管理系统_第3页
第3页 / 共12页
点击查看更多>>
资源描述
课程名称:现代数据库技术实验项目名称:运动会管理系统数据库设计姓名:何东灵 学号:0041400班级:C03班第M小组2006至 2007 学年 第 2 学期2007 年 6 月 15 日目录目 录2引言 3编写目的3背景3定义31. 数据字典3字典 1:运动员数据字典3字典 2:班级数据字典4字典 3:项目数据字典4字典 4:记录数据字典4字典 5:规则数据字典4字典 6:工作人员数据字典5字典 7:场地数据字典5字典 8:器材数据字典5字典 9:项目人员数据字典5字典 10:项目器材数据字典5字典 11:运动员成绩数据字典6字典 12:团体赛成绩数据字典6字典 13:班级总分数据字典62. 数据库设计73. 数据库设计中的一个编号过程10引言编写目的本数据库设计说明书专门为SGS系统的项目开发人员编写。背景项目 名称:学校运动会管理系统(SchoolGymkhanaSystem简称SGS) 项目提出者:江财SGS项目组织人员项目开发者:需求分析阶段有 SGS 项目开发小组人员共同完成,其它各阶段由小组成员 各自负责完成项目鉴定者:吴京慧教授项目开始时间: 2007-6-15定义列出本文件中用到的专门术语的定义和缩写词的源词组。1 所有的表名的命名规则:所有表名都根据表意用相关的英文全称命名2. 所有的主键命名规则:由表名+_PK用编号区分3. 所有外键的命名规则:由表名+_FK用编号区分4. 所有规则的命名规则:由列名+_CK用编号区分5. 所有索引的命名规则:表名+_INDEX+列名6. 所有字段的命名规则:类型+具体含义1. 数据字典字典1:运动员数据字典记录运动员相关信息字典结构属性名称属性类型是否允许为空默认值约束含义AthleteNoChar(8)NOT NULL主键、届数+流水号运动员编号AthleteNameVarchar2(20)NOT NULL运动员姓名SexVarchar2(2)NOT NULL“男”只取“男”、“女”性别TelephoneVarchar2(20)NULL联系方法ClassNoChar(8)NOT NULL外键、届数+流水号班级编号字典2:班级数据字典记录班级相关信息字典结构属性名称属性类型是否允许为空默认值约束含义ClassNoChar(8)NOT NULL主键、届数+流水号班级编号InstituteNameVarchar2(30)NOT NULL学院名称ClassNameVarchar2(30)NOT NULL班级全称字典3:项目数据字典记录项目相关信息字典结构属性名称属性类型是否允许为空默认值约束含义ItemNoChar(3)NOT NULL主键项目编号ItemNameVarchar2(50)NOT NULL项目名称SexLimitchar(2)NOT NULL只取“男”“女”性别限制ComityRequireNumber(2)NOT NULL集体项目人数StartTimeDateNULL开始时间EndTimeDateNULL结束时间TrackFieldJudgeNumber(1)NOT NULL田径赛区分ClassNoLimitNumber(2)NOT NULL每班最大人数TotalAthleteNumber(3)NOT NULL0已选人数RuleNoChar(3)NOT NULL外键规则编号FieldNoChar(3)NOT NULL外键场地编号字典4:记录数据字典记录记录相关信息字典结构属性名称属性类型是否允许为空默认值约束含义ItemNoChar(3)NOT NULL主键、外键项目编号ItemNameVarchar2(50)NOT NULL项目名称AthleteNoChar(8)NULL外键运动员编号AthleteNameVarchar2(20)NOT NULL运动员姓名ClassNoChar(8)NULL外键、届数流水号班级编号ClassDiscribeVarchar2(50)NULL班级描述GymkhanaNameVarchar2(50)NULL运动会名TrackFieldJudgeNumber(1)NOT NULL田径赛区分ScoreNumber(3)NULL成绩字典5:规则数据字典记录规则相关信息字典结构属性名称属性类型是否允许为空默认值约束含义RuleNoChar(3)NOT NULL主键规则编号RuleNameVarchar2(30)NULL规则名称TextPathVarchar2(200)NULL文本路径字典6:工作人员数据字典记录工作人员相关信息字典结构属性名称属性类型是否允许为空默认值约束含义OperatorNoChar(3)NOT NULL主键、职位+游水号工作人员编号OperatorNameVarchar2(20)NOT NULL工作人员姓名PostVarchar2(30)NULL单位DutyVarchar2(100)NULL运动会职务字典7:场地数据字典记录场地相关信息字典结构属性名称属性类型是否允许为空默认值约束含义FieldNoChar(3)NOT NULL主键场地编号FieldNameVarchar2(20)NULL场地名称AddressVarchar2(50)NULL具体地址字典8:器材数据字典记录器材相关信息字典结构属性名称 属性类型 是否允许为空 默认值 约束 含义EquipmentNoChar(3)NOT NULL主键器材编号EquipmentNameVarchar2(20)NOT NULL器材名称DepositVarchar2(100)NULL存放简介字典9:项目人员数据字典记录项目人员相关信息字典结构属性名称属性类型是否允许为空默认值约束含义ItemNoChar(3)NOT NULL主键、外键项目编号OperatorNoChar(8)NOT NULL外键、外键、职位+游水号工作人员编号字典10:项目器材数据字典记录项目器材相关信息字典结构属性名称属性类型是否允许为空默认值约束含义ItemNoChar(3)NOT NULL主键、外键项目编号EquipmentNoChar(3)NOT NULL主键、外键器材编号字典11:运动员成绩数据字典记录运动员成绩相关信息字典结构属性名称属性类型是否允许为空默认值约束含义ItemNoChar(3)NOT NULL主键、外键项目编号AthleteNoChar(8)NOT NULL0主键、外键运动员编号TrackFieldJudgeNumber(1)NOT NULL田径赛区分PropertyNumber(1)NOT NULL0:决赛;1:预赛比赛性质GroupNoNumber(2)NULL小组号CourseNoNumber(1)NULL1-8跑道号ScoreVarChar(20)NULL成绩PlaceNumber(3)NULL名次字典12:团体赛成绩数据字典记录团体赛成绩相关信息 字典结构属性名称属性类型是否允许为空默认值约束含义ItemNoChar(3)NOT NULL主键、外键项目编号ClassNoChar(8)NOT NULL0主键、外键、届数流水号班级编号TrackFieldJudgeNumber(1)NOT NULL田径赛区分GroupNoNumber(2)NULL小组号CourseNoNumber(1)NULL1-8跑道号PropertyNumber(1)NOT NULL0:决赛;1:预赛比赛性质ScoreNumber(3)NULL成绩PlaceNumber(3)NULL名次字典13:班级总分数据字典记录班级总分相关信息字典结构属性名称属性类型是否允许为空默认值约束含义ClassNoChar(8)NOT NULL0主键、外键、届数+流水号 班级编号TotalScoreNumber(3)NULL总分PlaceNumber(3)NULL总分排名2. 数据库设计3.1班级表设计3.1.1结构设计/*Class*/CREATE TABLE Class(ClassNoChar(8)NOT NULL,InstituteName Varchar2(30)NOT NULL,FullName Varchar2(30)NOT NULL,constraint Class_PK primary key(ClassNo)/*班级编号*/*学院名称*/*班级全称*/3.2运动员表设计3.2.1结构设计/*Athlete*/*运动员编号*/*运动员姓名*/*性别*/*联系方法*/*班级编号*/CREATE TABLE Athlete(AthleteNo Char(8) NOT NULL, AthleteName Varchar2(20) NOT NULL, Sex Varchar2(2) NOT NULL,check(Sex in(男,女),Telephone Varchar2(20) NULL,ClassNoChar(8)NOT NULL,constraint Athlete_PK primary key(AthleteNo),constraint Athlete_FK1 foreign key(ClassNo) references Class(ClassNo) );3.3 规则表设计3.3.1结构设计/*RuleList*/CREATE TABLE RuleList(RuleNoChar(3)RuleName Varchar2(30)TextPath Varchar2(200)NOT NULL,NULL,NULL,/*规则编号*/*规则名称*/*文本路径*/constraint RuleList_PK primary key(RuleNo);3.4场地表设计3.4.1结构设计/*FieldList*/CREATE TABLE FieldList(/*场地编号*/*场地名称*/*具体地址*/FieldNoChar(3)NOT NULL,FieldName Varchar2(20) NULL,AddressVarchar2(50)NULL,constraint FieldList_PK primary key(FieldNo);3.5 项目表设计3.5.1结构设计/*Item*/CREATE TABLE Item(ItemNo Char(3)NOT NULL,ItemName Varchar2(50) NOT NULL, SexLimit char(2) NOT NULL, ComityRequire Number(2) NOT NULL, StartTime Date NULL,EndTime Date NULL,TrackFieldJudge Number(1) NOT NULL,ClassNoLimitNumber(2) NOT NULL,TotalAthleteNumber(3) default 0,RuleNoChar(3) NOT NULL,FieldNoChar(3) NOT NULL,/*项目编号*/*项目名称*/*性别限制*/*集体项目人数*/*开始时间*/ /*结束时间*/ /*田径赛区分*/ /*每班最大人数*/*已选人数*/*规则编号*/*场地编号*/constraint Item_PK primary key(ItemNo), constraint Item_FK1 foreign key(RuleNo) references RuleList(RuleNo), constraint Item_FK2 foreign key(FieldNo) references FieldList(FieldNo);3.6 记录表设计3.6.1结构设计/*RecordList*/CREATE TABLE RecordList(ItemNoChar(3)ItemName Varchar2(50)NOT NULL,NOT NULL,/*项目编号*/*项目名称*/ /*运动员编号*/AthleteNameVarchar2(20)NOT NULL,/*运动员姓名*/ClassNoChar(8)NULL,/*班级编号*/ClassDiscribeVarchar2(50)NULL,/*班级描述*/GymkhanaName Varchar2(50)NULL,/*运动会名*/AthleteNo Char(8)NULL,/*田径赛区分*/*成绩*/TrackFieldJudge Number(1) NOT NULL,Score Number(3) NULL, constraint RecordList_PK primary key(ItemNo),constraint RecordList_FK1 foreign key(ItemNo) references Item(ItemNo), constraint RecordList_FK2 foreign key(AthleteNo) references Athlete(AthleteNo), constraint RecordList_FK3 foreign key(ClassNo) references Class(ClassNo);3.7 工作人员表设计3.7.1结构设计CREATE TABLE OperatorList(OperatorNo Char(3) NOT NULL, OperatorName Varchar2(20) NOT NULL, PostVarchar2(30) NULL,/*工作人员编号*/*工作人员姓名*/ /*单位*/ /*运动会职务*/DutyVarchar2(100) NULL, constraint OperatorList_PK primary key(OperatorNo);3.8器材表设计3.8.1结构设计CREATE TABLE EquipmentList(EquipmentNo Char(3)NOT NULL,/*器材编号*/EquipmentName Varchar2(20)NOT NULL,/*器材名称*/Deposit Varchar2(100)NULL,/*存放简介*/constraint EquipmentList_PK primary key(EquipmentNo);3.9项目人员表设计3.9.1结构设计CREATE TABLE ItemOperator(ItemNoChar(3)NOT NULL,/*项目编号*/OperatorNoChar(3)NOT NULL,/*工作人员编号*/constraint ItemOperator_PK primary key(ItemNo,OperatorNo),constraint ItemOperator_FK1 foreign key(OperatorNo) references OperatorList(OperatorNo);3.10项目器材表设计3.10.1结构设计/*ItemEquipment*/CREATE TABLE ItemEquipment(ItemNoChar(3)NOT NULL,/*项目编号*/*器材编号*/EquipmentNo Char(3)NOT NULL, constraint ItemEquipment_PK primary key(ItemNo,EquipmentNo), constraint ItemEquipment_FK1 foreign key(ItemNo) references Item(ItemNo), constraint ItemEquipment_FK2 foreign key(EquipmentNo) references EquipmentList(EquipmentNo);3.11运动员得分表设计3.11.1结构设计CREATE TABLE AthleteScore(ItemNo Char(3)NOT NULL,/*项目编号*/AthleteNo Char(8) default 0, /*运动员编号*/TrackFieldJudge Number(1) NOT NULL,/*田径赛区分*/Property Number(1) NOT NULL/*比赛性质*/check(Property in(0,1),GroupNo Number(2) NULL,/*小组号*/CourseNo Number(1) NULL/*跑道号*/check(CourseNo between 1 and 8),Score VarChar(20) NULL,/*成绩*/Place Number(3) NULL,/*名次*/constraint AthleteScore_PK primary key(ItemNo,AthleteNo), constraint AthleteScore_FK1 foreign key(ItemNo) references Item(ItemNo);3.12集体项目得分表设计3.12.1结构设计/*ComityScore*/CREATE TABLE ComityScore(ItemNoChar(3)NOT NULL,/*项目编号*/*田径赛区分*/*小组号*/*跑道号*/*成绩*/*比赛性质*/*名次*/ClassNoChar(8)default 0, /*班级编号*/TrackFieldJudge Number(1) NOT NULL,GroupNo Number(2) NULL,CourseNo Number(1) NULL check(CourseNo between 1 and 8),Score VarChar(20) NULL,Property Number(1) NOT NULL check(Property in(0,1),Place Number(3) NULL, constraint ComityScore_PK primary key(ItemNo,ClassNo),constraint ComityScore_FK1 foreign key(ItemNo) references Item(ItemNo), constraint ComityScore_FK2 foreign key(ClassNo) references Class(ClassNo);3.13班级总得分表设计3.13.1 结构设计CREATE TABLE ClassTotalScore(ClassNo Char(8) default 0, /*班级编号*/TotalScore Number(3) NULL,/*总分*/Place Number(3) NULL,/*总分排名*/constraint ClassTotalScore_PK primary key(ClassNo), constraint ClassTotalScore_FK1 foreign key(ClassNo) references Class(ClassNo);rem3. 数据库设计中的一个编号过程Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Txrem * 产生员工编号过程rem * 功能:根据输入的届数,自动产生运动员编号rem *输入参数:sYear届数rem * 输出参数: returnAthleteNo 运动员编号rem *CREATE or REPLACE PROCEDURE proAthleteNo(sYear varchar2,returnAthleteNo OUT varchar2)isx number;/*得到员工编号后三位的流水号*/varEmployeeNo1 char(8); /*某年份的最大员工编号*/ varEmployeeNo2 char(8); /*新的员工编号*/beginvarEmployeeNo1 :=;select NVL(max(AthleteNo),0) into varEmployeeNo1from Athletewhere AthleteNo like sYear | %;if varEmployeeNo1 = 0 then /*无该年份的运动员,编号从 001 开始*/ varEmployeeNo2 := sYear | -001;elsex := to_number(SUBSTR(varEmployeeNo1,5,3)+1;if x 10 then varEmployeeNo2 := sYear | -00 | ltrim(to_char(x); elsif x100 then varEmployeeNo2 := sYear | -0 | ltrim(to_char(x); elsevarEmployeeNo2 := sYear | - | ltrim(to_char(x);end if;end if;returnAthleteNo := varEmployeeNo2;end proAthleteNo;
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸设计 > 毕设全套


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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