北邮数据库实验二实验报告.docx
- 文档编号:7752541
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:28
- 大小:363.17KB
北邮数据库实验二实验报告.docx
《北邮数据库实验二实验报告.docx》由会员分享,可在线阅读,更多相关《北邮数据库实验二实验报告.docx(28页珍藏版)》请在冰豆网上搜索。
北邮数据库实验二实验报告
实验报告
课程名称______数据库_________
实验名称_E-R建模与关系表转换_
_计科__系_8__班姓名__郭思琦__
教师______成绩_________
2015年4月8日
实验目的:
1.理解和掌握E-R图的基本概念。
2.培养根据实际应用领域数据对象描述,抽取数据对象特征、关联关系等信息,设计数据库概念结构的能力。
3.选做:
学习PowerDesigner或其它工具,进行数据模型转换和关系表的自动创建,培养软件辅助设计工具的使用能力。
实验内容:
1.根据数据需求描述抽象出E-R图
阅读《GSM移动通信网络配置数据库》课程实验背景资料-11-v4.doc,根据GSM的基本概念,分析其中的数据需求,将其描述抽象成实体和联系,并确定实体和联系的属性,特别要注意标明其主键和外键等约束关系,最终形成E-R图。
2.将E-R图输入相关设计工具(ERWin、PowerDesign、SQLServer自带设计工具或者Visio等)形成概念模型。
3.使用工具将E-R图转换为数据库物理结构。
4.使用将物理模型转化为生成数据库中的表和视图的脚本,注意要选择数据库为SQLServer。
5.执行SQL脚本,生成表和视图。
6.成功后,查看生成的表和视图的情况。
实验环境:
1.数据库软件:
SQLServer2012
2.建模工具:
PowerDesigner15
3.实验人员:
郭思琦
实验步骤及结果分析:
1.阅读《GSM移动通信网络配置数据库》课程实验背景资料-11-v4.doc,根据GSM的基本概念,分析其中的数据需求,可抽象出实体及其属性如下。
a)MS
IMEI
国际移动设备识别码
Number(30)
主键
MSISDN
移动用户号码
Number(20)
UserName
用户名称
Characters(20)
MSCompany
手机制作商
Characters(20)
gsmMspSense
移动台接收机灵敏度
Integer
gsmMsHeight
移动台天线高度
Float(20)
gsmMspFout
移动台发射机功率
Float(20)
MZONE
是否为MZONE客户
Characters(20)
b)MSC
MscID
id号
Number(10)
主键
MscName
名字
Characters(20)
MscCompany
MSC-经度
Characters(20)
MscLongitude
MSC-经度
Longfloat
MscLatitude
MSC-纬度
Longfloat
MscAltitude
MSC-海拔
Longfloat
c)BSC
BscID
id号
Number(10)
主键
BscName
名字
Characters(20)
BscCompany
生产厂家
Characters(20)
Longitude
经度
Longfloat
Latitude
纬度
Longfloat
d)BTS
BtsName
BTS名字
Characters(20)
主键
Longitude
经度
Longfloat
Latitude
纬度
Longfloat
Altitude
海拔
Longfloat
BtsCompany
生产厂家
Characters(20)
BtsPower
BTS功率
Integer
e)Cell
CellID
小区id号
Number(10)
主键
AreaName
所属地区
Characters(20)
LAC
LAC号
Number(20)
Longitude
经度
Longfloat
Latitude
纬度
Longfloat
Direction
扇区方向角
Integer
Bcch
Bcch号
Integer
f)话务量
Data
日期
Data
主属性
Time
时间
Time
主属性
nTCH
业务信道数
Integer
Traff
全速率话务量
Longfloat
Rate
半速率话务比例
Longfloat
Thtraff
呼叫数
Longfloat
Callnum
拥塞数
Integer
Congsnum
半速率话务量
Integer
Callcongs
拥塞率
Float(20)
g)频点信息Freq
Freq
频点
Integer
主键
h)Antenna
AntennaID
天线ID
Integer
主键
AntennaHigh
天线高度
Float(20)
HalfPAngle
天线半功率角
Float(20)
MaxAttenuation
天线最大衰减
Integer
Gain
天线最大增益
Integer
AntTilt
天线下倾角
Float(20)
Pt
天线发射功率
Integer
MsPwr
移动台接受功率
Integer
i)路测信息
KeyNum
路测标示
Number(10)
主键
Latitude
接收电平
Longfloat
Longitude
经度
Longfloat
RxLev
纬度
Longfloat
2.各实体间的联系如下
a)1个MSC可以连接管理几个至数十个BSC,而每个BSC可以连接至1个MSC,MSC”管理”BSC,一对多,两端均为完全参与。
可引入cardinalitylimits。
b)1个BSC可连接控制多达数十个甚至上百个BTS,每个BTS(以及其所对应的cell/sector)可以连接至1-3个BSC。
BSC“控制”BTS,多对多,两端均为完全参与。
可引入cardinalitylimits。
c)BTS“对应于”cell/sector,一对一,两端均为完全参与。
d)1个MS可以位于1到6个BTS的覆盖范围内(当MS同时处于多于1个BTS的覆盖范围内时,MS处于如图2所示的切换区域内),但任一时刻只能与其中的1个BTS建立有效的无线通信链路,此BTS对应的小区/扇区覆盖范围成为MS的服务小区,可作为MS的属性Servingcellid。
具体情况如下:
1)移动台空闲状态下,cell“覆盖”MS,多对多,MS完全参与,cell部分参与。
2)移动台通话状态下,cell“服务于”MS,一对多,MS完全参与,cell部分参与。
e)根据小区/扇区为全向还是定向小区,每个小区的BTS都有一幅全向或定向天线。
天线”配置给”小区/扇区,一对一,天线部分参与,小区/扇区完全参与。
f)地理位置上相邻、并且定义为邻区的2个小区之间有邻区关系,邻区关系是一种非对称关系,多对多,两端均为完全参与,可引入角色表示法。
g)路测数据“来自于”小区,多对一,小区部分参与,路测数据完全参与。
h)每个小区都用分钟级话务数据加以“描述”,话务数据与小区的关系为多对一,小区和话务量都是完全参与。
i)频点“分配给”小区,多对多,频点部分参与,小区完全参与,联系“分配给”的属性包括
(1)上行频率
(2)下行频率(3)分配的信道类型,如BCCH、TCH、DCCH、CCCH等(4)cardinalitylimits:
BCCH有且只有一个。
3.形成E-R图如下
4.由E-R图形成概念模型如下
5.由E-R图生成物理结构模型如下
6.此时生成SQL脚本如下
/*==============================================================*/
/*DBMSname:
MicrosoftSQLServer2000*/
/*Createdon:
2015/4/15星期三17:
15:
50*/
/*==============================================================*/
ifexists(select1
fromdbo.sysreferencesrjoindbo.sysobjectsoon(o.id=r.constidando.type='F')
wherer.fkeyid=object_id('Antenna')ando.name='FK_ANTENNA_配置给_CELL')
altertableAntenna
dropconstraintFK_ANTENNA_配置给_CELL
go
ifexists(select1
fromdbo.sysreferencesrjoindbo.sysobjectsoon(o.id=r.constidando.type='F')
wherer.fkeyid=object_id('BSC')ando.name='FK_BSC_管理_MSC')
altertableBSC
dropconstraintFK_BSC_管理_MSC
go
ifexists(select1
fromdbo.sysreferencesrjoindbo.sysobjectsoon(o.id=r.constidando.type='F')
wherer.fkeyid=object_id('BTS')ando.name='FK_BTS_对应于_CELL')
altertableBTS
dropconstraintFK_BTS_对应于_CELL
go
ifexists(select1
fromdbo.sysreferencesrjoindbo.sysobjectsoon(o.id=r.constidando.type='F')
wherer.fkeyid=object_id('Cell')ando.name='FK_CELL_对应于2_BTS')
altertableCell
dropconstraintFK_CELL_对应于2_BTS
go
ifexists(select1
fromdbo.sysreferencesrjoindbo.sysobjectsoon(o.id=r.constidando.type='F')
wherer.fkeyid=object_id('Cell')ando.name='FK_CELL_配置给2_ANTENNA')
altertableCell
dropconstraintFK_CELL_配置给2_ANTENNA
go
ifexists(select1
fromdbo.sysreferencesrjoindbo.sysobjectsoon(o.id=r.constidando.type='F')
wherer.fkeyid=object_id('分配给')ando.name='FK_分配给_分配给_CELL')
altertable分配给
dropconstraintFK_分配给_分配给_CELL
go
ifexists(select1
fromdbo.sysreferencesrjoindbo.sysobjectsoon(o.id=r.constidando.type='F')
wherer.fkeyid=object_id('分配给')ando.name='FK_分配给_分配给2_FREQ')
altertable分配给
dropconstraintFK_分配给_分配给2_FREQ
go
ifexists(select1
fromdbo.sysreferencesrjoindbo.sysobjectsoon(o.id=r.constidando.type='F')
wherer.fkeyid=object_id('控制')ando.name='FK_控制_控制_BSC')
altertable控制
dropconstraintFK_控制_控制_BSC
go
ifexists(select1
fromdbo.sysreferencesrjoindbo.sysobjectsoon(o.id=r.constidando.type='F')
wherer.fkeyid=object_id('控制')ando.name='FK_控制_控制2_BTS')
altertable控制
dropconstraintFK_控制_控制2_BTS
go
ifexists(select1
fromdbo.sysreferencesrjoindbo.sysobjectsoon(o.id=r.constidando.type='F')
wherer.fkeyid=object_id('覆盖')ando.name='FK_覆盖_覆盖2_CELL')
altertable覆盖
dropconstraintFK_覆盖_覆盖2_CELL
go
ifexists(select1
fromdbo.sysreferencesrjoindbo.sysobjectsoon(o.id=r.constidando.type='F')
wherer.fkeyid=object_id('话务量')ando.name='FK_话务量_描述_CELL')
altertable话务量
dropconstraintFK_话务量_描述_CELL
go
ifexists(select1
fromdbo.sysreferencesrjoindbo.sysobjectsoon(o.id=r.constidando.type='F')
wherer.fkeyid=object_id('路测信息')ando.name='FK_路测信息_来自于_CELL')
altertable路测信息
dropconstraintFK_路测信息_来自于_CELL
go
ifexists(select1
fromdbo.sysreferencesrjoindbo.sysobjectsoon(o.id=r.constidando.type='F')
wherer.fkeyid=object_id('邻区')ando.name='FK_邻区_邻区_CELL')
altertable邻区
dropconstraintFK_邻区_邻区_CELL
go
ifexists(select1
fromdbo.sysreferencesrjoindbo.sysobjectsoon(o.id=r.constidando.type='F')
wherer.fkeyid=object_id('邻区')ando.name='FK_邻区_邻区2_CELL')
altertable邻区
dropconstraintFK_邻区_邻区2_CELL
go
ifexists(select1
fromsysindexes
whereid=object_id('Antenna')
andname='配置给_FK'
andindid>0
andindid<255)
dropindexAntenna.配置给_FK
go
ifexists(select1
fromsysobjects
whereid=object_id('Antenna')
andtype='U')
droptableAntenna
go
ifexists(select1
fromsysindexes
whereid=object_id('BSC')
andname='管理_FK'
andindid>0
andindid<255)
dropindexBSC.管理_FK
go
ifexists(select1
fromsysobjects
whereid=object_id('BSC')
andtype='U')
droptableBSC
go
ifexists(select1
fromsysindexes
whereid=object_id('BTS')
andname='对应于_FK'
andindid>0
andindid<255)
dropindexBTS.对应于_FK
go
ifexists(select1
fromsysobjects
whereid=object_id('BTS')
andtype='U')
droptableBTS
go
ifexists(select1
fromsysindexes
whereid=object_id('Cell')
andname='配置给2_FK'
andindid>0
andindid<255)
dropindexCell.配置给2_FK
go
ifexists(select1
fromsysindexes
whereid=object_id('Cell')
andname='对应于2_FK'
andindid>0
andindid<255)
dropindexCell.对应于2_FK
go
ifexists(select1
fromsysobjects
whereid=object_id('Cell')
andtype='U')
droptableCell
go
ifexists(select1
fromsysobjects
whereid=object_id('Freq')
andtype='U')
droptableFreq
go
ifexists(select1
fromsysobjects
whereid=object_id('MSC')
andtype='U')
droptableMSC
go
ifexists(select1
fromsysindexes
whereid=object_id('分配给')
andname='分配给2_FK'
andindid>0
andindid<255)
dropindex分配给.分配给2_FK
go
ifexists(select1
fromsysindexes
whereid=object_id('分配给')
andname='分配给_FK'
andindid>0
andindid<255)
dropindex分配给.分配给_FK
go
ifexists(select1
fromsysobjects
whereid=object_id('分配给')
andtype='U')
droptable分配给
go
ifexists(select1
fromsysindexes
whereid=object_id('控制')
andname='控制2_FK'
andindid>0
andindid<255)
dropindex控制.控制2_FK
go
ifexists(select1
fromsysindexes
whereid=object_id('控制')
andname='控制_FK'
andindid>0
andindid<255)
dropindex控制.控制_FK
go
ifexists(select1
fromsysobjects
whereid=object_id('控制')
andtype='U')
droptable控制
go
ifexists(select1
fromsysindexes
whereid=object_id('覆盖')
andname='覆盖2_FK'
andindid>0
andindid<255)
dropindex覆盖.覆盖2_FK
go
ifexists(select1
fromsysobjects
whereid=object_id('覆盖')
andtype='U')
droptable覆盖
go
ifexists(select1
fromsysindexes
whereid=object_id('话务量')
andname='描述_FK'
andindid>0
andindid<255)
dropindex话务量.描述_FK
go
ifexists(select1
fromsysobjects
whereid=object_id('话务量')
andtype='U')
droptable话务量
go
ifexists(select1
fromsysindexes
whereid=object_id('路测信息')
andname='来自于_FK'
andindid>0
andindid<255)
dropindex路测信息.来自于_FK
go
ifexists(select1
fromsysobjects
whereid=object_id('路测信息')
andtype='U')
droptable路测信息
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 实验 报告