实验五 数据更新及视图操作

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

课程名称数据库原理实验

成绩

实验名称实验五数据更新及视图操作

学号姓名班级日期2014.4.4 实验目的:

1. 掌握Insert、Update、Delete语句的使用。

2. 理解视图的概念,掌握Create View、Drop View语句的使用。

3. 掌握通过视图来操作基表。

实验平台:

利用安装的SQL SERVER 2008及其交互查询工具-查询编辑器来操作SQL语言。

实验内容:

1. 插入操作(可将之前的记录先删除,然后使用T-SQL语句完成下列操作)

(1) 向Student表中插入下列数据:如图1所示:

1001,张天, 男, 20, 10

1002,李兰,女, 21, 10

1003,陈铭,男, 21, 10

1004,刘茜,女, 21, 20

1005,刘朝阳,男, 22, 20

图1

(2) 向Course表中插入下列数据:如图2所示:

1,数据结构, 101, 4

2,数据库, 102, 4

3,离散数学, 103, 4

4,C语言程序设计,101, 2

图2 (3) 向SC表中插入下列数据:如图3所示:

1001, 1, 80

1001, 2, 85

1001, 3, 78

1002, 1, 78

1002, 2, 82

1002, 3, 86

1003, 1, 92

1003, 3, 90

1004, 1, 87

1004, 4, 90

1005, 1, 85

1005, 4, 92

图3

(4) 向Teacher表中插入下列数据:如图4所示: 101,张星, 10

102,李珊, 10

103,赵天应,10

104,刘田, 20

图4

(5) 向Dept表中插入下列数据:如图5所示:

10,计算机科学与技术

20,信息

图5

2. 修改数据

将张星老师数据结构课程的学生成绩全部加2分。

SQL语言实现代码如下所示,查询的视图信息如图6所示。

update SC set grade=grade+2 where cno in (select cno from Teacher ,Course where Course .tno =Teacher.tno and tname='张星' and cname='数据结构')

图6

3. 删除数据

删除刘朝阳同学的所有选课记录。

SQL语言实现代码如下所示,查询的视图信息如图7所示。

delete from SC

where sno in (select sno from Student where sname='刘朝阳' )

图7

4. 建立视图

在插入数据的Student基本表上为计算机系学生的记录建立一个视图CS_STUDENT。

SQL语言实现代码如下所示,查询的视图信息如图8所示。

create view CS_STUDENT as

select Student.* from Student,Dept

where Student.deptno =Dept.deptno

and dname='计算机科学与技术'

图8

5.查询视图并通过视图插入一条记录、修改一条记录、删除一条记录,分别观察基表中数据的变化。

SQL语言实现代码如下所示,查询的视图信息如图9所示。

select * from CS_STUDENT

插入一条记录

insert into CS_STUDENT values(1006,'张三','男',10,23)

修改一条记录

update CS_STUDENT set sno=13053132 where sname='张三'

删除一条记录

delete from CS_STUDENT where sno=13053132

图9

6. 删除视图

在操作结束后,删除视图CS_STUDENT。

SQL语言实现代码如下所示,查询的视图信息如图10所示。

drop view CS_STUDENT

图10

1.SQL语句:

(1)create table Student

(

sno int,

sname char(8),

sex char(2),

deptno int,

sage int

)

insert into Student

(sno ,sname ,sex ,deptno ,sage)

values (1001, '张天', '男', 10, 20) ,( 1002, '李兰', '女', 10, 21), ( 1003, '陈铭', '男', 10, 21),(1004,'刘茜','女',20,21),

(1005,'刘朝阳','男',20,22)

(2)create table Course

(

cno int,

cname char(20),

tno int,

credit int

)

insert into Course

(cno,cname ,tno ,credit )

values (1,'数据结构',101,4),( 2, '数据库', 102, 4) ,

(3,'离散数学',103,4) ,(4,'C语言程序设计',101,2)

(3)insert into SC (sno ,cno,grade)

values (1001,1,80) ,(1001,2,85),(1001,3,78), (1002,1,78),

(1002,2,82),(1002,3,86),(1003,1,92),(1003,3,90),

(1004,1,87),(1004,4,90),(1005,1,85),(1005,4,92)

(4)create table Teacher

(

sno int,

tname char(8),

deptno int

)

insert into Teacher

(tno,tname,deptno )

values (101,'张星',10) ,(102,'李珊',10),

(103,'赵天应',10), (104,'刘田',20)

(5)create table Dept

相关文档
最新文档