您好,欢迎访问三七文档
实验报告专业:计算机、软件工程班级:13软件1班学号:201324133104姓名:王熙婷课程名称:数据库系统原理2014-2015学年度第2学期课程类别:专业必修实验时间:2015年5月25日实验名称:实验四实验目的和要求:(1)巩固数据库的基本知识(2)掌握创建数据表的两种方法(3)掌握删除数据表的两种过程(4)掌握修改数据表的方法(5)初步掌握向已建立的数据表中添加数据记录的方法(6)掌握为数据表创建索引以及删除索引的方法实验软硬件要求:(1)有一台安装Windows2000、WindowsXP或WindowsNT操作系统的计算机(2)安装MicrosoftSQLServer2000或SQLServer2005任意一版本(个人版、企业版、标准版)(3)实验人员应该掌握了SQLServer2005的安装过程,并对MicrosoftSQLServer2000或SQLServer2005的软件组成、各组成软件的用户操作界面及其主要功能作用有一定程度的了解。(4)实验前创建好MyDB1、SCDB、ShiYan数据库。实验内容、实验过程、所遇问题及其解决方法(附页)实验总结及心得体会:(1)实验要求和目的基本掌握(2)对于不懂的问题通过上网搜索和书上查找等方式,不仅能快速地掌握,还能了解到该问题涉及的其他方面的知识。(3)要勤于动手,敢于尝试,对每一个知识点学会拓展。评定成绩:批阅教师:2015年月日实验内容、实验过程、所遇问题及其解决方法1、利用“企业管理器”在数据库MyDB1中建立数据表MyTab1和MyTab2。2、利用“企业管理器”在数据库SCDB中建立数据表student,course和sc,并依次向数据表中输入对应数据。Student表:学号sno不为空,值是唯一,姓名sname取值唯一:保存student表:输入数据:course表:保存表:主键为cno,先行课编号cpno的取值来源于课程编号cno的取值。输入数据:sc表:表sc的主键为(sno,cno),sno,cno均为表sc的外码:输入数据:查询是否建立完成:student表:course表:sc表:3、利用查询分析器在实验三中的数据库Shiyan中建立以下4个数据表(S、P、J、SPJ),并依次向各个表中输入数据useShiYancreatetableS(SNOchar(4)primarykeynotNULL,SNAMEvarchar(20)notNULL,STATUSsmallint,CITYvarchar(30),constraintSNO_indexunique(SNO),)createtableP(PNOchar(4)primarykeynotNULL,PNAMEvarchar(20)notNULL,COLORchar(6),WEIGHTrealdefault(0),)createtableJ(JNOchar(4)primarykeynotNULL,JNAMEvarchar(20)notNULL,CITYvarchar(30),constraintJNO_indexunique(JNO),)createtableSPJ(SNOchar(4)foreignkeyreferencesS(SNO),PNOchar(4)foreignkeyreferencesP(PNO),JNOchar(4)foreignkeyreferencesJ(JNO),QTYintnotNULLcheck(QTY=1andQTY=10000),primarykey(SNO,PNO,JNO),)useShiYaninsertintoSvalues('S1','精益',20,'天津')insertintoSvalues('S2','盛锡',10,'北京')insertintoSvalues('S3','东方红',30,'北京')insertintoSvalues('S4','丰泰盛',20,'天津')insertintoSvalues('S5','为民',30,'上海')insertintoPvalues('P1','螺母','红',12)insertintoPvalues('P2','螺栓','绿',17)insertintoPvalues('P3','螺丝刀','蓝',14)insertintoPvalues('P4','螺丝刀','红',14)insertintoPvalues('P5','凸轮','蓝',40)insertintoPvalues('P6','齿轮','红',30)insertintoJvalues('J1','三建','北京')insertintoJvalues('J2','一汽','长春')insertintoJvalues('J3','弹簧厂','天津')insertintoJvalues('J4','造船厂','天津')insertintoJvalues('J5','机车厂','唐山')insertintoJvalues('J6','无线电厂','常州')insertintoJvalues('J7','半导体厂','南京')insertintoSPJvalues('S1','P1','J1',200)insertintoSPJvalues('S1','P1','J3',100)insertintoSPJvalues('S1','P1','J4',700)insertintoSPJvalues('S1','P2','J2',100)insertintoSPJvalues('S2','P3','J1',400)insertintoSPJvalues('S2','P3','J2',200)insertintoSPJvalues('S2','P3','J4',500)insertintoSPJvalues('S2','P3','J5',400)insertintoSPJvalues('S2','P5','J1',400)insertintoSPJvalues('S2','P5','J2',100)insertintoSPJvalues('S3','P1','J1',200)insertintoSPJvalues('S3','P3','J1',200)insertintoSPJvalues('S4','P5','J1',100)insertintoSPJvalues('S4','P6','J3',300)insertintoSPJvalues('S4','P6','J4',200)insertintoSPJvalues('S5','P2','J4',100)insertintoSPJvalues('S5','P3','J1',200)insertintoSPJvalues('S5','P6','J2',200)insertintoSPJvalues('S5','P6','J4',500)检查结果:4、在企业管理器中建立S、P、J、SPJ之间的关联关系图。5、数据表的删除操作:利用“企业管理器”删除数据表MyTab1:利用Transact-SQL删除数据表MyTab2.useMyDB1godroptableMyTab2检查结果(已删除成功):6、数据表的修改操作:(1)为S表新建一属性名为PHONE的列,其数据类型为长度为12个字符的字符串类型,默认值为“000000000000”。(2)为J表的JNAME列创建一个列值不为空的约束条件NotnullJname。(4)为P表的PNO属性列创建一个该属性列值互不重复的约束条件UnqPno。(6)为SPJ表的QTY属性列建立取值必须是100的整数的约束条件QTYNum。useShiYanaltertableSaddPHONEchar(12)default('000000000000')altertableJaddconstraintNotnullJnamecheck(JNAME'')altertablePaddconstraintUnqPnounique(PNO)altertableSPJaddconstraintQTYNumcheck(QTY%100=0)检查结果(插入成功):(3)删除J表中JNAME属性列上取值不为空的约束条件NotnullJname。(5)删除P表中PNO属性列上取值不重复的约束条件UnqPno。useShiYanaltertableJdropconstraintNotnullJnamealtertablePdropconstraintUnqPno检查结果(删除成功):7.索引的创建操作。(1)在S表的SNO属性列上建立一个名为SnoIndex的唯一索引。(2)为P表的PNO列创建一个名为PnoIndex的唯一索引,索引值按降序排列。(3)为J表的JNAME属性列创建一个名为JnameIndex的非聚簇索引。(4)为SPJ表的SNO、PNO、JNO三属性列创建一个名为SPJIndex的非聚簇索引,且按SNO属性值升序、PNO属性值和JNO属性值降序排列。useShiYancreateuniqueindexSnoIndexonS(SNO)createuniqueindexPnoIndexonP(PNOdesc)createnonclusteredindexJnameIndexonJ(JNAME)createnonclusteredindexSPJIndexonSPJ(SNOasc,PNOdesc,JNOdesc)检查结果(插入成功):8.索引的删除操作(1)删除S表上的SnoIndex索引。(2)删除P表上的PnoIndex索引。(3)删除J表上的JnameIndex索引。(4)删除SPJ表上的SPJIndex索引。useShiYandropindexS.SnoIndexdropindexP.PnoIndexdropindexJ.JnameIndexdropindexSPJ.SPJIndex所遇问题和解决方法:问题:对“企业管理器”的使用还很不熟悉,在建立约束和索引的时候遇到很多麻烦。解决方法:通过上网查询“企业管理器”建立索引和约束的方法。
本文标题:数据库实验报告四
链接地址:https://www.777doc.com/doc-5859399 .html