实验一建立数据库及其对象_第1页
实验一建立数据库及其对象_第2页
实验一建立数据库及其对象_第3页
实验一建立数据库及其对象_第4页
实验一建立数据库及其对象_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验一 建立数据库及其对象 徐龙琴、刘双印设计制作实验一 建立数据库及其对象一、实验目的1、掌握用SSMS或Transact-SQL创建、查看、修改、删除数据库的方法;2、掌握数据库的备份和恢复方法;3、掌握数据库的分离和附加方法; 4、掌握用SSMS或Transact-SQL语句创建、修改、删除表及向其添加数据的方法。二、实验要求1、实验前做好上机实验的准备,针对实验内容,认真复习与本次实验有关的知识,完成实验内容的预习准备工作;2、能认真独立完成实训内容;3、实验后做好实验总结,根据实验情况完成总结报告。三、实验内容1、用SSMS在 “对象资源管理器”中完成如下任务:(1)建立一个学生课程

2、数据库。具体文件属性如下表:参数参数值数据库名Student逻辑数据文件名Student_dat操作系统数据文件名D: Student_dat.mdf数据文件的初始大小10MB数据文件的最大大小100MB数据文件增长幅度10%日志逻辑文件名Student_log操作系统日志文件名D: Student_log.ldf日志文件初始大小5MB日志文件增长幅度10create database Student on primary(name=student_dat, filename='D:Student.mdf',size=10MB,maxsize=100MB,filegrowth=

3、10%)log on(name=Student_log,filename='D:Student_log.ldf',size=5MB,filegrowth=10MB)(2)再修改学生课程数据库Student的主数据文件的大小,使其扩大两倍,然后查看扩大后的数据库属性。Alter database Studentmodify file(name=student_dat,filename='D:Student.mdf',size=20MB,maxsize=100MB,filegrowth=10%)exec sp_helpdb student2、用SSMS,在数据库St

4、udent中:(1)创建如下四个表,并设置相关的约束条件:S列名说明数据类型约束Sno学号整形主键Sname姓名字符(10)非空,唯一Ssex性别字符(2)取男或女Sage年龄短整形Sdept院系字符(20)可取空,默认 计算机系create table S(Sno int constraint s_prim primary key,Sname char(10) not null unique,Ssex char(2) check(Ssex in ('男','女'), Sage smallint,Sdept char(20)default '计算机系&#

5、39;);Course列名说明数据类型约束Cno课程号字符(4)主键Cname课程名字符(10)非空Tno教师号整形非空create table Course (Cno char(4) primary key,Cname char(10) not null,Tno int not null)SC列名说明数据类型约束Sno学号整形外键Cno课程号字符(4)外键Grade成绩整数取0100create table SC(Sno int not null,Cnochar(4) not null,Gradeint null,primary key (Sno,Cno),foreign key (Sno)

6、references S(Sno),foreign key (Cno)references Course(Cno),check(Grade between 0 and 100);Teacher列名说明数据类型约束Tno教师号整形主键Tname教师名字符(10)Sdept院系字符(20)可取空,默认 计算机系create table Teacher(Tnointprimary key,Tnamechar(10)not null,Sdaptchar(20)default '计算机系')(2) 用SSMS修改将刚才所创建表:在Course表中插入如下两列:列名说明数据类型约束Cpno

7、先行课字符(4)Ccredit学分整数非空alter table Course addCpnochar(4),Ccreditintnot null将SC表中列Grade的类型改为smallintalter table SC drop CK_SC_Grade_060DEAE8;alter table SCalter column Grade smallint在S表中创建CHECK约束,约束名为Sagechk,要求实现年龄在1545取值alter table Sadd constraint Sagechk check(Sage between 15 and 45)在Course表中创建外键约束,约

8、束名为Fk_Tno,要求实现Course表中的Tno必须参照Teacher表的Tno取值。alter table Courseadd constraint Fk_Tno foreign key (Tno) references Teacher(Tno)删除Course表中Tno列alter table Course drop constraint Fk_Tnoalter table Coursedrop column Tno (3)删除将刚才所创建Teacher表drop table Teacher(4)向表插入以下数据 SSnoSnameSsexSageSdept1001王勇男20电子系10

9、02刘梅女19计算机系1003王芳女18网络系1004张兵男17软件系insert into S values('1001','王勇','男','20','电子系')insert into S values('1002','刘梅','女','19','计算机系')insert into S values('1003','王芳','女','18','网络系')

10、insert into S values('1004','张兵','男','17','软件系')CourseCnoCnameCpnoCcredit1数据库542数学NULL23信息系统144操作系统635数据结构746数据处理NULL27C+程序设计语言64insert into Course values('1','数据库','5','4')insert into Course values('2','数学','

11、;','2')insert into Course values('3','信息系统','1','4')insert into Course values('4','操作系统','6','3')insert into Course values('5','数据结构','7','4')insert into Course values('6','数据处理

12、9;,'','2')insert into Course values('7','程序设计','6','4')SCSnoCnoGrade100119210012851001388100229010032551004270insert into SC values('1001','1','92')insert into SC values('1001','2','85')insert into SC val

13、ues('1001','3','88')insert into SC values('1002','2','90')insert into SC values('1003','2','55')insert into SC values('1004','2','70')3、用SSMS方法完成如下数据库的分离和附加:(1)分离Student数据库sp_detach_db'Student'附加S

14、tudent数据库sp_attach_db'Student','D:Student.mdf','D:Student_log.ldf'4. 用SSMS方法完成如下数据库的备份和恢复: ( 选作实验)(1)备份数据库创建备份设备,其名称为bk_Student0,保存文件为D: Student0.bak,并对Student数据库进行完全备份,备份到备份设备bk_ Student0中。sp_addumpdevice'disk','bk_Student0','D: Student0.bak'backup da

15、tabase Student to bk_Student0with init go在Student数据库中,创建一张表temp1(学号,课程号,成绩,学分)并对Student数据库进行第一次差异备份,备份到备份设备bk_Student1中create table temp1 (Snoint ,Cnochar(4),Gradesmallint,Ccreditint)sp_addumpdevice'disk','bk_Student1','D: Student1.bak'backup database Student to bk_Student1wi

16、th differentialgo在Student数据库中,再创建一个用户表:temp2(学号,课程号,成绩,学分),并对Student数据库进行第二次差异备份,备份到备份设备bk_Student2中。create table temp2(Snoint ,Cnochar(4),Gradesmallint,Ccreditint)sp_addumpdevice'disk','bk_Student2','D: Student2.bak'backup database Studentto bk_Student2with differentialgo(2)

17、删除Student数据库drop database Student(3)恢复数据库从备份设备bk_ Student0中恢复Student数据库,并查看表temp1和temp2是否存在?use master restore database Student from bk_Student0表temp1和temp2都不存在 再次删除数据库Student,然后将Student数据库恢复到第一次差异备份后的状态,并查看表temp1和temp2是否存在?drop database Studentuse master restore database Studentfrom bk_Student0with file=1,norecoverygorestore database Studentfrom bk_Student1go表temp1存在 temp2不存在再次删除数据库

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论