数据库练习题答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
习题(全部都要用代码实现)
1、创建一个名为“xsgl”数据库。其中主数据文件为10MB,最大大小不受限制,每次增长
1MB;事务日志文件大小为1MB,最大大小不受限制,文件每次增长10%。并查看数据库信息。
create database xsgl
on primary
(name='xsgl',
filename='C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\xsgl.mdf',
size=10mb,maxsize=unlimited,filegrowth=1mb) log on
(name='xsgl_log',
filename='C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\xsgl_log.ldf',
size=1mb,maxsize=unlimited,filegrowth=10%) go
2、为” xsgl数据库“增加一个数据库文件
alter database xsgl
add file(name=新增的数据库文件,
filename='C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\成绩数据库新增的数据文件.ndf')
3、在xs gl数据库中创建kc表,主要包括课程号、课程名、学分和学时数四个字段,数据类型自己定义。查看kc表的结构。
use xsgl
go
create table kc
(
课程号char(4)not null,
课程名char(16)not null,
学分smallint,
学时数smallint)
go
4、在xsg l数据库中创建cj表,主要包括学号、课程号、成绩三个字段,数据类型自己定义。查看cj表的结构。
use xsgl
go
create table cj
(学号char(10)not null primary key,
课程号char(4)not null,
成绩numeric
)
go
5、在xsgl数据库中建立一个SC表,定义SNO,CNO共同组成SC的主键。查看SC表的结构。
create table sc
(
sno char(5),constraint pk_kch primary key,
cno char(5),constraint pk_kch primary key,
)
exec sp_help sc
6、将表“xs”改为“学生表”,将其中的列“电子邮件”改名为“E-mail”。
exec sp_rename'xs',' 学生表'
exec sp_rename'xs.电子邮件',' e-mail'
7、用代码向xs表中插入三条记录。
use xsgl
go
insert xs(学号,姓名,性别,出生时间,专业,总学分,照片,备注)
values(2006030101,'王林','男
','88/02/03',null,20,null,null)
insert xs
values(2006030102,'程明','男
','88/05/03',null,20,null,null)
insert xs(学号,姓名,性别,出生时间,专业,总学分) values(2006030103,'王燕','女
','87/08/022',null,20)
go
8、将xs表中所有男学生专业名称改写为“信息管理”。
update xs
set专业='信息管理'
where性别='男'
9、创建一个工人信息表,它包括工人编号、姓名、性别、出生日期、职位、工资和备注信息。并添加记录,在这个表上对数据执行相应的insert、update、delete命令。
use xsgl
go
create table工人信息表
(
工人编号char(4)not null,
姓名char(10)not null,
性别char(2),
出生日期char(10),
职位char(16),
go
10、删除原有kc表,重新创建kc表,字段定义不变,同时将课程号设置为主键。
use xsgl
drop table kc
go
create table kc
(课程号char(4)not null constraint pk_kch primary key,
课程名char(16)not null,
学分smallint,
学时数smallint)
11、给kc表中课程名字段添加唯一约束
use xsgl
go
drop table kc
add constraint ix_kcm unique(课程名)
go
12、删除sc表中的唯一约束
sp_help xs
go
alter table xs drop constraint df_zy
go
13、建立一个SC表,定义SCORE 的取值范围为0到100之间。
create table sc
go
create rule成绩as @SCORE>=0 and @SCORE<=100 go
15、在xs表的专业列添加一个默认约束,默认值为“信息管理”,然后添加一条新记录alter table xs
add constraint df_zy default'信息管理'for专业
insert xs(学号,姓名,出生时间,总学分)
values('2006030106','张永强','87/06/23',20) 16、把cj表中的学号创建为外键,其主键为xs表中的学号;课程号创建为外键,其主键为kc表中的课程号。
alter table cj
add constraint fk_cj_xs foreign key(sno) references xs(学号)
alter table cj
add constraint fk_cj_kc foreign key(cno)