数据库Word文档格式.docx
《数据库Word文档格式.docx》由会员分享,可在线阅读,更多相关《数据库Word文档格式.docx(18页珍藏版)》请在冰豆网上搜索。
![数据库Word文档格式.docx](https://file1.bdocx.com/fileroot1/2022-11/27/07b03edd-f8fb-4356-92ad-66a696fb872b/07b03edd-f8fb-4356-92ad-66a696fb872b1.gif)
2.培养根据实际应用领域数据对象描述,抽取数据对象特征、关联关系等信息,设计数据库概念结构的能力。
3.学习PowerDesigner工具,进行数据模型转换和关系表的自动创建,培养软件辅助设计工具的使用能力。
二、实验原理
根据需求自动生成程序是现代软件开发的一个趋势,可以提高编程效率和降低软件错误。
在数据库系统设计开发中,可以利用多种数据复制工具和直接将E-R图转化成数据库表结构的工具。
PowerDesigner是一种数据库概念设计工具,它支持将数据库概念结构转化为物理结构,然后再转化为SQL脚本,从而在数据库中直接生成表结构。
三、实验平台及环境
操作系统:
windows7
数据库软件:
采用Sybase数据库管理系统作为实验平台。
Sybase数据库采用SybaseAdaptiveServerEnterprise(ASE)。
数据库系统概念设计工具采用SybasePowerDesigner设计工具。
四、实验内容与步骤
1.根据数据需求描述抽象出E-R图
阅读《GSM移动通信网络配置数据库》课程实验背景资料-11-v4.doc,根据GSM的基本概念,分析其中的数据需求,将其描述抽象成实体和联系,并确定实体和联系的属性,特别要注意标明其主键和外键等约束关系,最终形成E-R图。
2.将E-R图输入PowerDesigner形成概念模型。
3.使用PowerDesigner将E-R图转换为数据库物理结构。
4.
5.使用PowerDesigner将物理模型转化为生成数据库中的表和视图的脚本。
生成的脚本文件如下:
/*==============================================================*/
/*Table:
BSC*/
createtableBSC
(
BscIdintegernotnull,
MSC_MscIdintegernotnull,
BscNamevarchar(64),
BscCompanyvarchar(64),
Longitudefloat,
Latitudefloat,
MscIdinteger,
constraintPK_BSCprimarykey(BscId)
)
/*Index:
BSC_PK*/
createuniqueindexBSC_PKonBSC(
BscIdASC
"
cardinalitylimits_FK"
*/
BTS*/
createtableBTS
BtsNamevarchar(64)notnull,
BscIdinteger,
Altitudefloat,
BtsCompanyvarchar(64),
BtsPowerinteger,
constraintPK_BTSprimarykey(BtsName)
BTS_PK*/
createuniqueindexBTS_PKonBTS(
BtsNameASC
MS*/
createtableMS
IMEIintegernotnull,
MSISDNinteger,
UserNamevarchar(64),
MSCompanyvarchar(64),
gsmMspSenseinteger,
gsmMsHeightfloat,
gsmMspFoutfloat,
MZONEvarchar(64),
constraintPK_MSprimarykey(IMEI)
MS_PK*/
createuniqueindexMS_PKonMS(
IMEIASC
service_FK*/
createindexservice_FKonMS(
MSC*/
createtableMSC
MscIdintegernotnull,
MscNamevarchar(64),
MscCompanyvarchar(64),
MscLongitudefloat,
MscLatitudefloat,
MscAltitudefloat,
constraintPK_MSCprimarykey(MscId)
MSC_PK*/
createuniqueindexMSC_PKonMSC(
MscIdASC
Relationship_3*/
createtableRelationship_3
CellIDintegernotnull,
constraintPK_RELATIONSHIP_3primarykeyclustered(CellID,BtsName)
Relationship_3_PK*/
createuniqueindexRelationship_3_PKonRelationship_3(
CellIDASC,
Relationship_3_FK*/
createindexRelationship_3_FKonRelationship_3(
CellIDASC
Relationship_3_FK2*/
createindexRelationship_3_FK2onRelationship_3(
Relationship_5*/
createtableRelationship_5
constraintPK_RELATIONSHIP_5primarykeyclustered(CellID,IMEI)
Relationship_5_PK*/
createuniqueindexRelationship_5_PKonRelationship_5(
Relationship_5_FK*/
createindexRelationship_5_FKonRelationship_5(
Relationship_5_FK2*/
createindexRelationship_5_FK2onRelationship_5(
antenna*/
createtableantenna
cel_CellIDinteger,
AntennaHighfloat,
HalfPAngleinteger,
MaxAttenuationinteger,
Gaininteger,
AntTiltinteger,
Ptinteger,
MsPwrinteger,
constraintPK_ANTENNAprimarykey(CellID)
antenna_PK*/
createuniqueindexantenna_PKonantenna(
atacell_FK*/
createindexatacell_FKonantenna(
cel_CellIDASC
cell*/
createtablecell
ant_CellIDintegernotnull,
BtsNamevarchar(64),
AreaNamevarchar(64),
LACinteger,
Directioninteger,
Bcchinteger,
constraintPK_CELLprimarykey(CellID)
cell_PK*/
createuniqueindexcell_PKoncell(
createindexatacell_FKoncell(
ant_CellIDASC
frecell*/
createtablefrecell
Freqintegernotnull,
constraintPK_FRECELLprimarykeyclustered(CellID,Freq)
frecell_PK*/
createuniqueindexfrecell_PKonfrecell(
FreqASC
frecell_FK*/
createindexfrecell_FKonfrecell(
frecell_FK2*/
createindexfrecell_FK2onfrecell(
freq*/
createtablefreq
constraintPK_FREQprimarykey(Freq)
freq_PK*/
createuniqueindexfreq_PKonfreq(
neig*/
createtableneig
AdjcellIdinteger,
CellLacintegernotnull,
Adjcelllacinteger,
constraintPK_NEIGprimarykey(CellLac)
neig_PK*/
createuniqueindexneig_PKonneig(
CellLacASC
neigh*/
createtableneigh
nei_CellLacintegernotnull,
constraintPK_NEIGHprimarykeyclustered(CellLac,nei_CellLac)
neigh_PK*/
createuniqueindexneigh_PKonneigh(
CellLacASC,
nei_CellLacASC
/*===================================================