数据库课程设计-NBA选秀系统数据库模型.doc_第1页
数据库课程设计-NBA选秀系统数据库模型.doc_第2页
数据库课程设计-NBA选秀系统数据库模型.doc_第3页
数据库课程设计-NBA选秀系统数据库模型.doc_第4页
数据库课程设计-NBA选秀系统数据库模型.doc_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

nba选秀系统数据库模型一、需求分析(1)、可行性需求分析需求分析是指准确了解和分析用户的需求,这是最困难、最费时、最复杂的一步,但也是最重要的一步。需求分析是整个设计过程的基础,它决定了以后各步设计的速度和质量。进行数据库设计首先必须准确了解与分析用户需求(包括数据与处理)。nba作为世界上水平最高的篮球俱乐部联盟,深受广大篮球爱好者的追捧,而一年一度的nba选秀活动,更成为球迷关注的焦点。作为专门的nba选秀数据库,一定会满足大众的信息需求。(2)具体的系统信息选秀系统信息包括三个方面,其具体功能如下:a新秀球员信息:包括球员姓名、年龄、籍贯、身高、顺位以及司职位置;新秀球员信息功能包括对球员信息的录入、删除和查询,以及被那个球队选中、选秀信息等。bnba球队信息:包括球队名称、所在城市、上赛季战绩、球队主教练;nba球队信息功能还包括对球队信息的录入、删除和查询,以及所选新秀、选秀信息等。c选秀信息:选秀信息包括新秀姓名、签约球队、入队时间、合同时间、合同金额、有无保障;选秀信息功能还包括各项数据的录入、删除和查询。(3)具体的软件信息在开发过程中,按照软件工程的步骤,从设计到开发采用了面向对象的思想和技术,采用了sql server 2008数据库服务器,运用c/s技术,使得本系统可以方便的和其他子系统进行数据交换。同时,注意从软件的图形应用界面上优化软件质量,使得本系统具有很强的可操作性。二、概念结构设计概念结构设计是指对用户的需求进行综合、归纳与抽象,形成一个独立于具体dbms的概念模型,是整个数据库设计的关键。根据各种信息的内容以及它们之间的关系,该数据库系统的e-r图如下:位置身高年龄籍贯姓名顺位球员姓名签约球队选秀球员信息入队时间合同日期选秀信息合同金额有无保障nba球队信息主教练上赛季排名所在城市球队名称三、逻辑结构设计逻辑结构设计是将抽象的概念结构转化为所选用的dbms支持的数据模型,并对其进行优化。关系模式中,各实体所定义的属性如下:1.player(新秀球员信息)包括以下属性:顺位、姓名、籍贯、年龄、身高、位置新秀球员基本情况表(player):字段名描述数据类型数据长度字段限制pid顺位char10primary keypname姓名char20nullphome籍贯char20not nullpage年龄char10not nullphight身高char10not nullpsite位置char10not null2.nbateam(nba球队信息)包括以下属性:球队名称、所在城市、上赛季排名、主教练nba球队基本情况表(nbateam):字段名描述数据类型数据长度字段限制tname球队名称char50primary keytcity所在城市char50not nulltlevel上赛季战绩char10not nulltcoach主教练char30not null3.xuanxiu(选秀信息)包括以下属性:球员姓名、签约球队、入队时间、合同时长、合同金额、有无保障选秀信息情况表(xuanxiu):字段名描述数据类型数据长度字段限制intime入队时间date4not nullzongtime合同时长char5not nullmoney合同金额char10not nullbaozhang有无保障char2not nullpname球员姓名char20primary keytname签约球队char10null四、数据库物理设计数据库的物理设计就是为逻辑数据模型选取一个最合适应用要求的物理结构的过程,在这个阶段中要完成两大任务:1.确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构;(1)关系数据库的存取方法: 采用索引方法,主要是b+树索引方法。(2)数据库的存储结构:录入数据采用表格方式,限制录入数据类型及取值范围以保证数据的完整性及准确。由于条件不允许,本系统没有将表和索引放在不同的磁盘,没有能够实现磁盘驱动器并行工作,降低了物理i/o读写的效率。为了改进系统的性能,我选择把比较大的表分放在两个磁盘上,以加快存取速度。2.对物理结构进行评价,评价的重点是时间和空间效率以及安全性。评价物理结构:(1)数据完成的时间性:如成绩的录入,仅当师资科录入教学进程,教务科分发教师教学任务安排之后,各系方可录入成绩。(2)数据安全性:本系统采用二级安全保障:第一级:依赖于网络本身对用户使用权限的规定。第二级:在程序模块中通过使用密码控制功能对用户使用权限加以限制。五、数据库实施在数据库实施阶段,设计人员运用dbms提供的数据库语言(如sql)及其宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。1.创建新数据库:打开sql工具“查询分析器”在查询窗口中键入下列sql语句:create database nbaxuanxiu执行上述sql语句即可新建一名为nbaxuanxiu的数据库2.创建数据表:要创建的数据表分别是:player、nbateam、xuanxiu(1)创建player数据表:a新建查询窗口b在查询窗口中键入下列sql语句create table player ( /创建球员信息表 pid char(10) primary key, not null, /新秀顺位 pname char(20) not null, /球员姓名 phome char(20), /球员籍贯 page char(10), /球员年龄 phight char(10), /球员身高 psite char(10), /球员位置 )执行上述sql语句即可创建户信息窗口相关表格如下:(附player表数据)(2)创建nbateam数据表:create table nbateam ( /创建nba球队信息表 tname char(50) primary key, not null, /nba球队名称 tcity char(50) /球队所在城市 tlevel char(10) /上赛季战绩 tcoach char(30) /主教练姓名 )执行上述sql语句即可创建管理员信息表相关表格如下:(附nbateam表数据)(3)创建xuanxiu数据表: create table xuanxiu( /创建选秀信息表 pname char(20) primary key, not null /球员姓名 tname char(10) not null, /签约球队 intime date /入队时间 zongtime char(5) /合同时长 money char(10) /合同金额 baozhang char(2) /合同有无保障 )执行上述sql语句即可创建图书信息表相关表格如下:(附xuanxiu表数据)六、数据库运行和维护1. 数据定义:基本表的创建、修改及删除;视图的创建和删除。(1)基本表的创建与删除(例:player表):a、 创建(修改)基本表 create table player ( /创建球员信息表 pid char(10) primary key, not null, /新秀顺位 pname char(20) not null, /球员姓名 phome char(20), /球员籍贯 page char(10), /球员年龄 phight char(10), /球员身高 psite char(10), /球员位置 )b、 删除基本表drop table player cascade(2)视图的操作:数据库视图的定义(创建和删除)、查询和更新a、 创建视图: create view pidviewasselect pid pname phome page phight psitefrom playerwhere phome =美国 with check option;b、 对视图查询:找出所有来自美国的新秀的顺位和姓名: select pid pname from pidview;c、 删除视图:删除前面定义的pidview视图。drop view pidview2. 数据操作:即数据库查询操作(单表查询、连接查询、嵌套查询)(1)单表查询 a、 查询顺位(pid)为03的球员姓名(pname): select pname,pid from playerwhere pid=03b、 查询顺位(pid)前十位的球员所有信息:(top) select top 10 *from playerc、 查询所有新秀的籍贯(phome): (distinct)select distinct phomefrom playerd、 查询球员年龄(page)在21-23岁之间的球员信息:(between)select *from playerwhere page between 21 and 23e、 查询所有位置(psite)为控球后卫、得分后卫的球员姓名(pname):(in) select pnamefrom playerwhere psite in (得分后卫,控球后卫)f、 查询所有新秀的平均年龄(avg) select avg(page) 平均年龄from player g、 把新秀顺位的后10位按降序排列: select top 10 * from playerorder by pid desc(2)连接查询a、 查询法国球员被哪个球队选走: select nbateam.tnamefrom nbateam,playerwhere player.phome=法国b、 查询球员姓名(pname)为保罗-乔治的顺位(pid)和签约球队(tname): select player.pid,xuanxiu.tnamefrom player,xuanxiuwhere player.pname=保罗-乔治and xuanxiu.pname=保罗-乔治(3)嵌套查询 查询埃文-特纳的选秀信息: select *from xuanxiuwhere pname=(select pname from player where pname=埃文-特纳) 3、数据库的安全性(1)创建与删除数据库登陆账户、用户名、数据库角色a、创建sqlserver身份验证的登录账户bobo、小爬爬、吉吉exec sp_addlogin bobo,123,aexec sp_addlogin 小爬爬,123,aexec sp_addlogin 吉吉,123,ab、创建数据库用户 exec sp_adduser 小爬爬exec sp_adduser 吉吉exec sp_adduser bobo, bobo, managersc、建立数据库角色exec sp_addrole managersd、删除sqlserver身份验证的登录账户 吉吉exec sp_droplogin 吉吉e、从当前数据库中删除用户 吉吉exec sp_dropuser 吉吉(2)授权与收回操作a、把对表player的insert权限授予用户大力,并允许他再将此权限授予其他用户。 grant insert on table player to 小爬爬 with grant optionb、把查询表player和修改nowprice属性的权限授给用户小爬爬。grant select,update(nowprice)on table playerto 小爬爬c、把用户大力查询表player权限收回。revoke select on table playerfrom 小爬爬 cascade4、数据库的完整性对于player表:player (pid、 pname、page、phight、psite),pid的值应该在0和10之间:create table player (pid char(10) primary key, not null,pname char(20) not null,phome char(20) not null,page char(10) not null,phight char(10) not null,psite char(10) not null,check (pid 0 and pid =10 ) )七、总结经过几周的设计和开发,数据库管理系统

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论