您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 合肥工业大学数据库实验报告
计算机与信息学院数据库系统概论实验报告专业班级学生姓名及学号课程教学班号任课教师实验指导教师实验地点四号实验楼第四机房2013~2014学年第二学期实验1使用向导创建和删除数据库一、实验目的1.熟悉SQLServer2008中SQLServerManagementStudio的环境;2.理解数据库的逻辑结构和物理结构;3.掌握使用向导创建和删除数据库的方法;二、实验要求1.熟练使用SSMS进行数据库的创建和删除;2.完成实验报告(实验报告的格式见附录);三、实验内容设有一学籍管理系统,其数据库名为“EDUC”。初始大小为10MB,最大为50MB,数据库自动增长,增长方式是按5%比例增长;日志文件初始为2MB,最大可增长到5MB,按1MB增长。数据库的逻辑文件名为“student_data”,物理文件名为“student_data.mdf,存放路径为“E:\sql_data”。日志文件的逻辑文件名为“student_log”,物理文件名为“student_log.ldf”,存放路径为“E:\sql_data”。1、使用SQLServerManagementStudio(简称SSMS)创建数据库;2、修改数据库EDUC1的相关属性值,如数据文件和日志文件的名字、大小、增长方式、存储路径等;3、数据库的备份与恢复;4、使用向导删除上面建立的数据库;四、实验步骤1.使用SQLServerManagementStudio(简称SSMS)创建数据库。(1)启动SSMS在开始菜单中:所有程序-MicrosoftSQLServer2008-SQLServerManagementStudio,如下图所示:(2)建立数据库在“对象资源管理器”窗口中,建立上述数据库EDUC。在数据库节点上,右击选择新建数据库,按实验内容的要求,对数据文件和日志文件进行设置。如下所示,点击确定。(3)用同样的方法建立一个同样属性的数据库,数据库名为EDUC1。2、修改数据库EDUC1的相关属性值,如数据文件和日志文件的名字、大小、增长方式、存储路径等;选择数据库节点EDUC1,右击-属性-文件,根据自己的需要,对相应的属性值进行相应的调整,点击确定。如下图所示:3、数据库的备份与恢复:SQLServer提供了“分离/附加”数据库、“备份/还原”数据库、复制数据库等多种数据库的备份与恢复的方法,这里熟悉使用“分离/附加”的方法。(1)数据库的分离选择数据库节点EDUC,右击-任务-分离,进入如下图所示的界面,选择更新统计消息下的复选框,单击确定,完成数据库的分离,此时可以将分离后的数据库的数据文件和日志文件拷贝到U盘里(2)数据库的附加在对象资源管理器中,选择数据库节点,右击-附加-添加,在文件件E:\sql_data中选择数据文件student_data.mdf,单击确定,如下图所示,再单击确定,完成数据库的附加。4.使用向导删除上面建立的数据库。用SSMS删除建立的数据库EDUC。在对象资源管理其中,选中数据库EDUC节点,右击-删除即可。五、实验总结1、身份验证时,出现过失败现象,后来解决了验证问题。2、如果分离前没有关闭所有窗口,可导致分离失败。实验2使用SQL语句删除和创建数据库一、实验目的1.了解SQLServer2005/2008数据库的逻辑结构和物理结构。2.掌握使用SQL语句创建和删除数据库。二、实验要求1.熟练使用MicrosoftSQLServerManagementStudio进行数据库的创建和删除操作。2.完成实验报告。三、实验内容使用SQL语句创建数据库userdb1。四、实验步骤1.创建数据库userdb1的SQL语句,注意各个参数的意义:createdatabaseuserdb1on(name=userdb1_data,--数据文件的逻辑名称,注意不能与日志逻辑同名filename='e:\sql_data\userdb1.mdf',--物理名称,注意路径必须存在size=5,--数据初始长度为5Mmaxsize=10,--最大长度为10Mfilegrowth=1)--数据文件每次增长1Mlogon(name=userdb1_log,filename='e:\sql_data\userdb1.ldf',size=2,maxsize=5,filegrowth=1)具体如下图所示:2.根据步骤1的sql语句,写出创建实验1中数据库EDUC的sql语句,建立数据库EDUC。3.用SQL语句删除步骤1建立的数据库userdb1。五、实验总结1、应注意区分数据文件的逻辑名称和日志逻辑名称。2、执行了SQL语句后,只有在数据库节点上刷新一次才能看到新建的数据库。实验3使用SQL语句创建和删除表一、实验目的1.了解表的结构特点。2.了解SQLServer的基本数据类型。3.学会使用T-SQL语句创建表。二、实验要求1.完成SQL语句创建和删除基本表。2.完成实验报告。三、实验内容在数据库EDUC中,创建如下几个表:表3.1class表(班级信息表)字段名称类型允许空值主键说明ClsNOChar(6)NOTNULL是班号ClsNameVarchar(16)NOTNULL班名DirectorVarchar(10)NULL辅导员SpecialtyVarchar(30)NULL专业表3.2student表(学生信息表)字段名称类型允许空值主键说明SnoChar(8)NOTNULL是学号SnameVarchar(10)NOTNULL姓名SexChar(2)性别:男、女ClsNOChar(6)NULL班级的编号,(外键)参照表ClassSaddrVarchar(20)住址Sagenumeric(3,0)年龄,大于10,但小于30岁HeightDecimal(4,2)身高表3.3course表(课程信息表)字段名称类型允许空值主键说明CnoChar(4)NOTNULL是主键CnameVarchar(16)NOTNULL课程的名称Cpnochar(4)NULL先修课程的课程号(外键),参照cnoCcreditTinyint学分表3.4sc表(学生选课成绩表)字段名称类型允许空值主键说明SnoChar(8)NOTNULL是学号,参照Student,与Cno组成主键CNOChar(4)NOTNULL是课程号,参照CoursegradeNumeric(4,1)NULL成绩四、实验步骤1、打开查询窗口,输入创建基本表的sql语句,在可用数据库的下拉框中,选择数据库EDUC或者使用useEDUC,首先创建class表。2、自己编写SQL语句创建class表,student表,course表和sc表,截图如下:五、实验总结1、在创建表的时候,应该先创建class表,之所以先创建class表,是因为class表中的主码clsno是student表中的外码,先创建student表会出错。2、在创建表时要明确主码或者外码或者其它属性。实验4数据更新操作一、实验目的1.熟悉使用UPDATE/INSERT/DELETE语句进行表操作;2.能将这些更新操作应用于实际操作中去;二、实验要求1.完成下面的实验内容,并提交实验报告;2.在实验报告中附上相应的代码;三、实验内容(1)向表(Student)中插入数据插入数据之后使用命令:Select*fromStudent;检查插入数据的正确性(2)向表(Class)中插入数据SnoSnameSsexClsNOSaddrSageHeight20090101王军男CS01下关40#201.7620090102李杰男CS01江边路96#221.7220090306王彤女MT04中央路94#191.6519940701吴杪女PH08莲化小区74#181.60ClsNOClsNameDirectorSpecialtyCS01计算机一班王宁计算机应用CS02计算机二班王宁计算机应用MT04数学四班陈晨数学PH08物理八班葛格物理插入数据之后使用命令:Select*fromClass;检查插入数据的正确性(3)向表(Course)中插入数据CnoCnameCpnoCredit0001高等数学Null60003计算机基础000130007物理00014插入数据之后使用命令:Select*fromCourse;检查插入数据的正确性(4)向表(SC)中插入数据SNOCNOGrade20090101000190200901010007862009010200018720090102000376200903060001872009030600039319940701000785插入数据之后使用命令:Select*fromsc;检查插入数据的正确性(5)对于student表,将所有班级号为‘CS01’的,并且年龄不大于20岁的学生的班级号改为‘CS02’。(6)对于student表,删掉所有年龄不小于20岁,并且班级号为‘CS02’的学生的记录。这里要分为两步:第一步:在SC表上定义级联删除(思考为什么?),如下所示:第二步:执行删除操作,如下图所示:(7)对于student表,插入一条新记录,它的具体信息为,学号:20071101、姓名:张三、性别:男、年龄:19、班级编号:‘CS01’、身高:1.78、地址:下关50#;对于class表,插入一条记录,具体信息为,班级号:GL01,班级名称:地理一班,辅导员:葛格,专业:地理(8)对于student表,将年龄最小的学生的家庭地址去掉。(9)对于student表,将平均年龄最小的一个班级编号改为‘GL01’四、实验步骤1、向表(student)中插入数据,并使用命令:“Select*fromStudent;”检查插入数据的正确性,截图如下:2、向表(Class)中插入数据并检查正确性。3、向表(Course)中插入数据并检查正确性。4、向表(SC)中插入数据并检查正确性。5、对于student表,将所有班级号为‘CS01’的,并且年龄不大于20岁的学生的班级号改为‘CS02’,检查更改后的student表。6、对于student表,删掉所有年龄不小于20岁,并且班级号为‘CS02’的学生的记录。(1)、在SC表上定义级联删除。(2)、执行删除操作7、对于student表,插入一条新记录,它的具体信息为,学号:20071101、姓名:张三、性别:男、年龄:19、班级编号:‘CS01’、身高:1.78、地址:下关50#;对于class表,插入一条记录,具体信息为,班级号:GL01,班级名称:地理一班,辅导员:葛格,专业:地理8、对于student表,将年龄最小的学生的家庭地址去掉。9、对于student表,将平均年龄最小的一个班级编号改为‘GL01’。五、实验总结1、在处理上要小心谨慎,在插入时各项应该一一对应,否则会出现错误。2、使用select语句查询时,应该以选中执行的方式检查,否则插入语句执行两次会报错。3、当在学生表上删除该生时,也应删除其相应的选课记录,所以要在sc表上定义级联。4、对于任务9,对班级平均成绩进行从小到大排序,且选择删除第一个(top)会更简单。实验5创建和删除索引一、实验目的1.了解索引的类型和应用。2.学会用SQL语句对表创建和删除索引。二、实验要求1.了解索引类型并比较各类索引的不同之处。2.完成索引的创建和删除,并提交实验报告。三、实验内容1.分别建立以下索引(如果不能成功建立,请分析原因)(1)在student表的sname列上建立普通降序索引,以下两种方法任选一个。方法一:利用向导创建;展开student表节点,索引-新建索引,如下图,点击添加按钮,选择sname,点击确定,再点击确定。方法二:使用语句创建索引;(2)在course表的cname列上建立唯一索引。(3)在sc表的sno列上建立聚集索引,将出现错误,如下图,请分析原因并完成该操作。(4)在sc表的sno(升序),cno(升序)和grade(降序)三列上建立一个普通索引。2.删除索引将student表的s
本文标题:合肥工业大学数据库实验报告
链接地址:https://www.777doc.com/doc-5819093 .html