--第2_1题创建数据库
create database Student201038897041
on primary
(name='student1',
filename='F:\coures\SQL Server数据库应用\student\data\student1.mdf',
size=10MB,
maxsize=100MB,
filegrowth=10%),
filegroup[group1]
(name=N'student2',
filename=N'F:\coures\SQL Server数据库应用\student\mydb\Student2.ndf',
size=20MB,
maxsize=100MB,
filegrowth=1MB
)
LOG ON
(name=N'Studentlog1',
filename='F:\coures\SQL Server数据库应用\student\log\Studentlog1.ldf',
size=10MB,
maxsize=50MB,
filegrowth=1MB
)
alter database student201038897041
add log file(name=N'studentlog2',
filename='F:\coures\SQL Server数据库应用\student\log\Studentlog2.ldf',
size=10MB,
filegrowth=1MB,
maxsize=50MB
) --第2_2题修改Student数据库,
--增加一个数据文件Student3,把它存放到file1
--文件组中,初始大小5MB,最大尺寸20MB,
--增长速度15%。 alter database student201038897041
add file
(name='student3',
filename='F:\coures\SQL Server数据库应用\student\mydb\student3.ndf',
size=5MB,
maxsize=20MB,
filegrowth=15%
)to filegroup group1 --删除数据文件Student3.ndf. --第2_3题在Student数据库中,创建“学生表”,
--包括如下字段:学号(char(6))、
--姓名(Char(8))、年龄(int not null和
--性别(Char(2))).主键为学号,
--年龄在16到30岁之间,性别默认值为“女”.
create table studentTable
(studentNum char(6)not null primary key,
name char(8) ,age int not null,check(age>=16 and age<=30),
sex char(2) check(sex='女'or sex='男') default('女'),
) --第2_4题修改数据表“学生表”, 在学生表中增加宇
--段:家庭地址(varchar(30))和学生所在系(Char(20)).
alter table studentTable
add studentAddress varchar(30),
studentCollege char(20) ----第2_5题修改数据表“学生表’,设置年龄的默认值为20
alter table studentTable
add constraint age_s default (20)for age --第2_6题向“学生表”插入4条记录
insert into studentTable(studentNum,name,age,sex,studentAddress
,studentCollege)
values('','王英',20,'女','绍兴路','交通工程系')
insert into studentTable(studentNum,name,age,sex,
studentAddress,studentCollege)
values('','吴波',18,'男','延安路','汽车系') insert into studentTable(studentNum,name,age,sex,
studentAddress,studentCollege)
values('','李霞',19,'女','南山路','管理信息系')
insert into studentTable(studentNum,name,age,sex,
studentAddress,studentCollege)
values('','张兵',20,'男','北山路','汽车系') --第2_7题修改表中的数据。
--(1)在学生信息表,学生王英从交通工程系转到管理信息系,请修改此记录。 update studentTable set studentCollege='管理信息系'
where studentNum='' ----(2)吴波同学的家搬到了解放路。
update studentTable set studentAddress='解放路'
where studentNum=''; ----(3)在学生信息表中,管理信息系的学生都毕业了,把他们的记录都删除。 delete from studentTable where
studentCollege='管理信息系'; --第2_8.关于学生表的“姓名”字段建立唯一非聚集索引IX_XM,按姓名降序排列。
create unique index IX_XM on
studentTable(name desc) --第2_9为学生表创建一个基于年龄和
--学号的索引IX_年龄,其中年龄按降序排列,
--当年龄相同时,按学号升序排列.
create index Ix_age on studentTable
(age desc,studentNum asc) --第2_10关于家庭地址建立非簇索引,要求填充因子为80,
--索引名为address.使用SQL命令查看索引address的空间使用情况.
create nonclustered index [address]on studentTable
(studentAddress)with fillfactor=80 --第2_11修改索引address,要求填充因子为90.
--删除索引address和“IX_年龄”。
drop index [address]on studentTable
go
drop index [IX_age]on studentTable
go
sp_helpindex studentTable go
--第2_13将Student数据库中的“学生表”删除
drop table studentTable
go
drop database [student2010388979041]
go
--2_15设计规划创建数据库studentcourse.
--向studentcourse添加三张数据表学生基本信息表S、
--课程数据表C和学生选课数据表sc,
--数据结构如表3.6~表3.8所示:完整性约束如表3.9~表3.11所示:记录信息如表3.3~表3.5所示
create database studentcourse go
create table s (
学号 char(6)not null primary key default('J0400'),
姓名 char(8)not null,
性别 char(2)not null,
出生日期 datetime not null default('1980-01-01'),
系 varchar(20)not null,
电话 char(8),
CONSTRAINT CK_Num CHECK (学号 Like'[A-Z][0-9][0-9][0-9][0-9]'),
CONSTRAINT CK_Sex CHECK (性别 ='女' OR 性别 ='男'),
CONSTRAINT CK_tel CHECK (电话 Like'[0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]')
) go create table c
(课程号 char(3)not null primary key,
课程名 varchar(20) not null,
学分 smallint ,预选课程号 char(3),
教师 char(8),
CONSTRAINT CK_Cno CHECK (课程号 Like 'C[0-9][0-9]'),
) go
CREATE TABLE SC (
学号 Char (6) NOT NULL,
课程号 Char (3) NOT NULL,
成绩 Smallint NULL,
FOREIGN KEY(课程号) REFERENCES C (课程号),
FOREIGN KEY( 学号 ) REFERENCES S (学号),
CHECK (成绩>=(0) AND 成绩<=(100) OR 成绩 IS NULL),
PRIMARY KEY CLUSTERED (学号 ASC,课程号 ASC)) --查询李丽同学选修课程信息
select s.姓名,s.学号,SC.课程号,c.课程名,c.学分,sc.成绩 from s,sc,c
where s.学号=SC.学号 and SC.课程号=C.课程号 and s.姓名='李丽' --查询陈弄清教师所讲授的课程信息
select s.学号,s.姓名,c.课程号,c.课程名,c.教师,SC.成绩 from SC,s,c
where s.学号=SC.学号 and SC.课程号=c.课程号 and c.教师='陈弄清'