数据库实验二参考答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验二:数据库和表的基本操作
一、实验目的
1.掌握在对象资源管理器中和使用T-SQL语句创建和管理数据库及表的方法。
2.掌握数据库管理的基本操作:建立、修改、查看、删除、重命名、附加、分离。
3.掌握primary key、unique、check、default约束、foreign key约束的创建和删除方法。
二、实验内容
(一) 数据库的基本操作
1.分别用T-SQL及管理平台完成以下操作:
创建“学生管理系统”数据库,数据库名为“stusystem”,初始大小20M,最大40M,数据库自动增长,增长方式是按5%;日志文件大小5M,最大25M,按5M增长。数据库的逻辑文件名和物理文件名均采用默认值。
CREATE DATABASE stusystem
ON PRIMARY
(NAME='stusystem',
FILENAME='f:\lx\stusystem.mdf',
SIZE=20mb,
MAXSIZE=40mb,
FILEGROWTH=5%)
LOG ON
(NAME='stusystem_log',
FILENAME='f:\lx\stusystem_log.ldf',
SIZE=5mb,
MAXSIZE=25mb,
FILEGROWTH=5mb)
2.查看stusystem数据库基本信息。
EXEC SP_HELPDB stusystem
3.将stusystem数据库的分配空间增加至30M。
ALTER DATABASE stusystem
Modify file (name=stusystem,size=30)
4.为数据库stusystem增加数据文件stusystem_data1,初始大小10M,最大50M,按照
5%增长。
ALTER DATABASE stusystem
ADD FILE
(NAME=stusystem_data1,
FILENAME='f:\lx\stusystem_data1.ndf',
SIZE=10MB,
MAXSIZE=50MB,
FILEGROWTH=5%)
5.将增加的数据文件stusystem_data1删除。
ALTER DATABASE stusystem
REMOVE FILE stusystem_data1
6.将stusystem数据库从服务器分离。
命令格式如下:sp_detach_db ‘dbname’ ---分离数据库 EXEC sp_detach_db'stusystem1'
7.将stusystem数据库附加到当前服务器。
CREATE DATABASE stusystem2
ON PRIMARY (FILENAME='f:\lx\stusystem.mdf')
FOR ATTACH
8.将stusystem数据库重命名为stusystemnew。
Exec sp_renamedb'stusystem','stusystemnew'
9.创建数据库快照,并将数据库恢复到数据库快照。
略,参考P177
10.分别用T-SQL及管理平台完成:删除数据库stusystemnew。
DROP stusystemnew
(二)表的基本操作
分别在对象资源管理器中和使用T-SQL命令做如下操作:
1.数据表的创建与管理:
(1)在stusystem数据库中创建如下表:
(2)修改“课程科目(subject)”表,使“课程名称”列的数据类型改为varchar(10)型。
ALTER TABLE subject ALTER COLUMN subname varchar(10)
注意:如果修改表的多个属性,需要分别写ALTER TABLE语句.
(3)修改“教师信息(teacher)”表,添加列名“联系电话”一列,要求数据类型为
varchar(11),默认值为“06323785947”,可空。
ALTER TABLE teacher
ADD telephone varchar(11)DEFAULT'06323785947'NULL
(4)利用存储过程查看表“班级(class)”的信息。
Exec sp_help class
(5)定义学生管理系统表关系图
具体步骤参见教材3.8
(三)数据完整性
(1)分别利用对象资源管理器和T-SQL语句为student表的学号列创建惟一约束;
ALTER TABLE student
ADD CONSTRAINT Unique_stunumber Unique(stunumber)
(2)分别利用对象资源管理器和T-SQL语句为student表的性别列定义默认值约束,默
认值为'男';
ALTER TABLE student
ADD CONSTRAINT DEFAULT_stusex DEFAULT'男'FOR stusex
(3)分别利用对象资源管理器和T-SQL语句为teacher表的性别列定义check约束,值
域为(‘男’,‘女’);(先增加性别列tsex)
ALTER TABLE teacher
ADD CONSTRAINT check_tsex check (tsex in('男','女'))
(4)分别利用对象资源管理器和T-SQL语句为“教师授课(cla_tea)”创建外键约束,其
中claid、teaid为外键。
ALTER TABLE cla_tea
ADD CONSTRAINT fkey_claid FOREIGN KEY (claid)
REFERENCES class(claid)