您好,欢迎访问三七文档
计算机与信息学院数据库实验报告专业班级学生姓名及学号课程教学班号任课教师实验指导教师实验地点2012~2013学年第二学期实验1使用向导创建和删除数据库一、实验目的1.熟悉SQLServer中SQLServerManagementStudio的环境2.了解SQLServer数据库的逻辑结构和物理结构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)创建数据库。(1)启动SSMS在开始菜单中:所有程序-SQLServer2005-SQLServerManagementStudio单击“连接”按钮,便可以进入【SQLServerManagementStudio】窗口。如果身份验证选择的是“混合模式”,则要输入sa的密码。(2)建立数据库在“对象资源管理器”窗口,建立上述数据库EDUC。在数据库节点上右击选择新建。同时建立一个同样属性的数据库EDUC1。2.使用向导删除上面建立的数据库。用SSMS删除建立的数据库EDUC。五、实验总结经过本次试验,对于SQLSERVER有了一个初步的认识,也对于在sqlserver上创建数据库有了一定的了解。实验2使用SQL语句创建和删除数据库一、实验目的1.了解SQLServer2005数据库的逻辑结构和物理结构。2.掌握使用SQL语句创建和删除数据库。二、实验要求1.熟练使用查询分析器进行数据库的创建和删除操作。2.完成实验报告。三、实验内容用SQL语句去创建和删除数据库。四、实验步骤1.创建数据库userdb1。2.根据步骤1的sql语句,写出创建实验1中数据库EDUC的sql语句,并建立数据库EDUC.createdatabaseEDUCon(name=EDUC_data,--数据文件的逻辑名称,注意不能与日志逻辑同名filename='E:\sql_data\student_data.mdf',--物理名称,注意路径必须存在size=10,--数据初始长度为Mmaxsize=50,--最大长度为Mfilegrowth=5%)--数据文件每次增长Mlogon(name=EDUC_log,filename='E:\sql_data\student_log.ldf',size=2,maxsize=5,filegrowth=1)3.用SQL语句删除步骤1建立的数据库userdb1。dropdatabaseuserdb1;五、实验总结掌握了用SQL语句创建和删除数据库,对SQLServer都有了进一步的认识和了解,发现其实SQL语句还是挺好用的。实验三分别用向导和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语句。(1)student表:createtablestudent(snochar(8)NOTNULLprimarykey,--学号snamevarchar(10)NOTNULL,--姓名sexchar(2)check(sex='女'orsex='男'),--性别:男、女clsnochar(6),--班级编号,(外键)参照表classforeignkey(clsno)referencesclass(clsno),sadrrvarchar(20),--住址sagenumeric(3,0),--年龄,大于,但小于岁heightdecimal(4,2)--身高)(2)class表createtableclass(clsnochar(6)NOTNULLprimarykey,--班号clsnamevarchar(16)NOTNULL,--班名directorvarchar(10)NULL,--辅导员specialtyvarchar(30)NULL--专业)(3)course表createtablecourse(cnochar(4)NOTNULLprimarykey,--主键cnamevarchar(16)NOTNULL,--课程名称cpnochar(4),--先修课程的课程号(外键),参照cnoccredittinyint--学分)(4)sc表createtablesc(snochar(8)NOTNULL,--学号,参照Student,与Cno组成主键cnochar(4)NOTNULL,--课程号,参照Coursegradenumeric(4,1)NULL,--成绩primarykey(sno,cno),foreignkey(sno)referencesstudent(sno),foreignkey(cno)referencescourse(cno),)五、实验总结通过本次试验,基本掌握了用sql语言创建数据库表的基本方法。实验四数据更新操作一.实验目的1.熟悉使用UPDATE/INSERT/DELETE语句进行表操作;2.能将这些更新操作应用于实际操作中去;二.实验要求1.完成下面的实验内容,并提交实验报告;2.在实验报告中附上相应的代码;三.实验内容(1)向表(Student)中插入数据SnoSnameSsexClsNOSaddrSageHeight20090101王军男CS01下关40#201.7620090102李杰男CS01江边路96#221.7220090306王彤女MT04中央路94#191.6519940107吴杪女PH08莲化小区74#181.60插入数据之后使用命令:Select*fromStudent;检查插入数据的正确性insertintostudentvalues('20090101','王军','男','cs01','下关#','20','1.76');insertintostudentvalues('20090102','李杰','男','cs01','江边路#','22','1.72');insertintostudentvalues('20090306','王彤','女','MT04','中央路#','19','1.65');insertintostudentvalues('19940107','吴杪','女','PH08','莲化小区#','18','1.60');select*fromstudent;(2)向表(Class)中插入数据ClsNOClsNameDirectorSpecialtyCS01计算机一班王宁计算机应用CS02计算机二班王宁计算机应用MT04数学四班陈晨数学PH08物理八班葛格物理插入数据之后使用命令:Select*fromClass;检查插入数据的正确性insertintoclassvalues('cs01','计算机一班','王宁','计算机应用');insertintoclassvalues('cs02','计算机二班','王宁','计算机应用');insertintoclassvalues('MT04','数学四班','陈晨','数学');insertintoclassvalues('PH08','物理八班','葛格','物理');select*fromclass;(3)向表(Course)中插入数据CnoCnameCpnoCredit0001高等数学Null60003计算机基础000130007物理00014插入数据之后使用命令:Select*fromCourse;检查插入数据的正确性insertintocoursevalues('0001','高等数学',NULL,'6');insertintocoursevalues('0003','计算机基础','0001','3');insertintocoursevalues('0007','物理','0001','4');select*fromcourse;(4)向表(SC)中插入数据SNOCNOGrade20090101000190200901010007862009010200018720090102000376200903060001872009030600039319940106000785insertintoscvalues('20090101','0001','90');insertintoscvalues('20090101','0007','86');insertintoscvalues('20090102','0001','87');insertintoscvalues('20090102','0003','76');insertintoscvalues('20090306','0001','87');insertintoscvalues('20090306','0003','93');insertintoscvalues('19940107','0007','85');select*fromsc;(5).对于student表,将所有班级号为‘CS01’的,并且年龄小于20岁的学生的班级号改为‘CS02’。updatestudentsetclsno='cs02'whereclsno='cs01'andsage20;select*fromstudent;(6).对于student表,删掉所有年龄大于20岁,并且专业号为‘CS02’的学生的记录。对于student表,插入一条新记录,它的具体信息为,学号:20071101、姓名:张三、性别:男、年龄:19、班级编号:‘CS01’。由于表student数据较少,因而添加数据,用来满足要求:insertintostudentvalues('20102702','黄磊','男','cs01','下关#','18','1.78');insertintostudentvalues('20102712','李超','男','cs01',
本文标题:数据库试验答案
链接地址:https://www.777doc.com/doc-5486888 .html