欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【数据库实验课堂】实验二 使用SQL Server管理数据表

程序员文章站 2024-03-21 10:08:28
...

 实验二 使用SQL Server管理数据表:

1、请在指定数据库内完成以下内容:

1) 依据数据表的结构创建相对应的数据表,表结构如下所示;

**学生信息表(student)**

字段名称    字段类型及长度    说明    备注
Sno    Char(9)    学生学号    主关键字
Sname    Char(6)    学生姓名    非空
Ssex    Char(2)    学生性别    可为空
Sage    Int            学生年龄    可为空
Sdept    Char(8)      学生所在院系 可为空
**课程信息表(course)**

字段名称    字段类型及长度    说明    备注
Cno    Char(4)    课程编号    主关键字
Cname    Char(20)    课程名称    非空
Cpno    Char(4)    先行课    可为空
Ccredit   Int             学分    可为空
**选课信息表(sc)**

字段名称    字段类型及长度    说明    备注
Sno    Char(9)    学生学号    主关键字
Cno    Char(4)    课程编号    主关键字
Grade      Int              成绩     可为空

2) 在表student中增加新字段 “班级名称(sclass)“;
3) 在表student中删除字段“班级名称(sclass)”;
4) 修改表student中字段名为“sname”的字段长度由原来的6改为8;
5) 修改表student中字段“sdept”名称为“dept”,长度为20;
6) 修改表student中sage字段名称为sbirth,类型为smalldatetime;
7) 修改表student新名称为stu_info;
8) 删除数据表stu_info;

2、创建教师授课管理数据库JSSK,并完成以下内容;

1) 在数据库JSSK中创建下列三张表;

**表名:Teachers**

列名    数据类型     说明      描述
Tno    字符型,长度7    主键     教师号
Tname    字符型,长度10    非空      姓名
Tsex    字符型,长度2    默认为“男”  性别
Birthday 小日期时间型    允许空    出生日期
Dept    字符型,长度20    允许空    所在部门
Sid    字符型,长度18         身份证号
**表名: Lessons**

列名    数据类型            说明     描述
Cno    字符型,长度10    主键    课程号
Cname    字符型,长度20    非空    课程名
Credit    短整型         学分
property 字符型,长度为10         课程性质
**表名: TL**

列名    数据类型            说明      描述
Tno    字符型,长度7    主键    教师号
Cno    字符型,长度10    主键    课程名
Hours    整数                   课时

2) 在TL表里添加一个授课类别字段,列名为Type,类型为Char,长度为4;

3) 将TL表的Hours的类型改为smallint;

4) 删除Lessons表中的property列;

创建产品销售数据库CPXS,数据文件的逻辑文件名为cpxs_data,物理文件名为D:\sql\cpxs.mdf;文件初始大小为2MB,自动增长,每次增长1MB;日志文件逻辑文件名为cpxs_log,物理文件为D:\sql\cpxs.ldf;文件初始大小2MB,自动增长,每次增长15%;

3、(选做)在数据库CPXS中创建下列三张表;

**表名:产品表(cp)表结构**

列名    数据类型     说明    描述
Cpbh    字符型,长度6    主键    产品编号
Cpmc    字符型,长度30    非空    产品名称
Jg    浮点型,长度8    允许空    价格
Kcl    整型,长度4    允许空    库存量
**表名:销售商(xss)表结构**

列名    数据类型       说明    描述
Xsbh    字符型,长度6    主键    销售商编号
Xsmc    字符型,长度30    非空    销售商名称
Dq    字符型,长度10    允许空    地区
Fzr    字符型,长度8    允许空    负责人
Dh    字符型,长度12    允许空    电话
Bz    文本,长度16    允许空    备注
**表名: 产品销售(xss)表结构**

列名    数据类型            说明    描述
Cpbh    字符型,长度6    主键    产品编号
Xsbh    字符型,长度6    主键    销售商编号
Xssj    Datetime,长度8    非空    销售时间
Sl    整型,长度4    非空    数量
Je    浮点型,长度8    非空    金额
--1.1
use Stu
create table student
(
Sno char(9) primary key,
Sname char(6) not null,
Ssex char(2),
Sage int,
Sdept char(8)
)    

create table course
(
Cno char(4) primary key,
Cname char(20) not null,
Cpno char(4),
Ccredit int,
)    

create table sc
(
Sno char(9),
Cno char(4),
Grade int,
primary key (Sno,Cno)
)

--1.2
alter table student
add sclass char(10)

--1.3
alter table student
drop column sclass

--1.4
alter table student
alter column sname char(8)

--1.5
exec sp_rename 'student.sdept' ,'dept', 'column'
alter table student
alter column dept char(20)

--1.6
exec sp_rename 'student.sage' ,'sbirth', 'column'
alter table student
alter column sbirth smalldatetime

--1.7
exec sp_rename 'student' ,'stu_info'

--1.8
drop table stu_info

--2.1
create table Teachers
(
Tno char(7) primary key,
Tname char(10) not null,
Tsex char(2) default '男',
Birthday smalldatetime,
Dept char(20),
Sid char(18)
)
create table Lessons
(
Cno char(10) primary key,
Cname char(20) not null,
Credit smallint,
property char(10)
)
create table TL
(
Tno char(7),
Cno char(10),
Hours int,
primary key(Tno,Cno)
)

--2.2
alter table TL
add Type char(4)

--2.3
alter table TL
alter column hours smallint

--2.4
alter table lessons 
drop column property