2021年数据库实验3答案

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验三:交互式SQL语句的使用

欧阳光明(2021.03.07)

1、实验目的

(1)掌握数据库对象的操作过程,包括创建、修改、删除(2)熟悉表的各种操作,包括插入、修改、删除、查询

(3)熟练掌握常用SQL语句的基本语法

2、实验平台

使用SQL Server提供的Microsoft SQL Server Management Studio工具,交互式使用SQL语句。

3 实验内容及要求

选择如下一个应用背景之一:

●学生选课系统

●习题3、4、和5中使用的数据库

●其它你熟悉的应用

(1)建立一个数据库和相关的表、索引、视图等数据库对象,练习对表、索引和视图的各种操作。

(2)要求认真进行实验,记录各实验用例及执行结果。

(3)深入了解各个操作的功能。

实验要求包括如下方面的内容:3.1 数据定义

1.基本表的创建、修改及删除 2.索引的创建

3.视图的创建

3.2 数据操作

完成各类更新操作包括:

1.插入数据

2.修改数据

3. 删除数据

3.3 数据查询操作

完成各类查询操作

1.单表查询

2.分组统计

3. 连接查询

4. 嵌套查询

5. 集合查询

3.4 数据操作

1.创建视图

2.视图查询

参考示例:

建立一个学生选课数据库,练习对表、视图和索引等数据库对象的各种操作。

一、数据定义

创建学生选课数据库ST,包括三个基本表,其中Student表保存学生基本信息,Course表保存课程信息,SC表保存学生选课信息,其结构如下表:

表1. Student表结构

表2. Course表结构

表3. SC表结构

1.创建、修改及删除基本表

(1)创建Student表

CREATETABLE Student

(Sno CHAR(8)PRIMARYKEY,

Sname CHAR(8),

Ssex CHAR(2)NOTNULL,

Sage INT,

Sdept CHAR(20)

);

(2)创建Course表

CREATETABLE Course

(Cno CHAR(4)PRIMARYKEY,

Cname CHAR(40)NOTNULL,

Cpno CHAR(4),

Ccredit SMALLINT,

);

(3)创建SC表

CREATETABLE SC

(Sno CHAR(8)FOREIGNKEY (Sno)REFERENCES Student(Sno), Cno CHAR(4),

Grade SMALLINT,

);

(4)创建员工表Employee

CREATETABLE Employee

(

编号CHAR(8)PRIMARYKEY,

姓名VARCHAR(8)notnull

部门CHR(40),

工资numeric(8,2),

生日datetime,

职称char(20),

);

指出该语句中的错误并改正后执行。

(5)检查表是否创建成功

SELECT*FROM Student

SELECT*FROM Course

SELECT*FROM SC

SELECT*FROM Employee

(6)修改表结构及约束

●增加班级列

ALTERTABLE Student ADD Sclass char(4)

●修改年龄列

ALTERTABLE Student ALTERCOLUMN Sage smallint

●增加约束

ALTERTABLE Course ADDUNIQUE(Cname)

(7)删除表

DROPTABLE Employee

2.创建索引

(1)为Course表按课程名称创建索引

CREATEINDEX iCname On Course(Cname)

(2)为Student表按学生姓名创建唯一索引

CREATEUNIQUEINDEX iSname ON Student(Sname)(3)为SC表按学号和课程号创建聚集索引

CREATECLUSTEREDINDEX iSnoCno On SC(Sno,Cno desc)(4)为Course表按课程号创建唯一索引

请自己完成该操作

3.创建视图

建立信息系学生的视图:

CREATEVIEW IS_Student

AS

SELECT Sno,Sname,Sage FROM Student

WHERE Sdept='IS';

3.2 数据操作

1.插入数据

将如下表格中的数据分别插入到数据库相应的表中:

表4.学生基本信息表

表5.课程信息表

表6.学生选课信息表

(1)插入到Student表

INSERTINTO Student VALUES('20100001','李勇','男',20,'CS','1001')

INSERTINTO Student VALUES('20100002','刘晨','女

相关文档
最新文档