【实验目的】
1、掌握创建视图的方法;
2、能够对视图进行修改;
3、学会应用视图修改数据;
4、掌握向表中添加数据的方法;
5、掌握更新表中多行数据的方法;
6、学会如何删除表中的数据。
【实验内容】
以附件的形式上传实验报告,报告要求:按顺序在每一小题后添上sql语句+查询结果截图,图片请适当裁剪,不要全屏图片贴进去。
1、 视图
① 创建视图
² 在S表中,为上海的供应商建立视图V_CityShanghai,要保证对该视图的修改都要符合供应商为上海这个条件。
² 为北京的供应商提供的零件创建V_CityBeijing_Pname视图,包括零件的编号、名称。
② 查询视图
² 查找北京的供应商提供的零件的信息
③ 更新视图
² 向V_CityShanghai插入一条记录('S6','三毛',20,'上海')
注:
1)当视图所依赖的基本表有多个时,不能向该视图插入数据.;
2)向可更新的分区视图中插入数据时,系统会按照插入记录的键值所属的范围,将数据插入到其键值所属的基本表中;
3)当加了“with check option”子句时,要添加的数据一定要满足视图定义时的条件,如本例中的供应商为“上海”,试着运行如下语句:
insert into V_CityShanghai values('S6','三毛',20,NULL)
² 将上海的供应商的“状态编码(Status)”更改为10
注:
可更新视图满足以下条件:
A)创建视图的SELECT语句中没有聚合函数,且没有TOP、GROUP BY、UNION子句及DISTINCT关键字。
B)创建视图的SELECT语句中不包含从基本表列通过计算所得的列。
C)创建视图的SELECT语句的FROM子句中至少要包含一个基本表。
² 删除上海的供应商记录(注意:不是删除视图)
④ 修改视图定义
² 将V_CityShanghai修改成只包含上海供应商的编号和名称
⑤ 删除视图
² 删除V_CityShanghai视图
2、 索引
① 1.对SPJ表的QTY列建立聚簇索引Index_Weight。
3、 数据更新:INSERT(插入)
① 首先检查表结构(分别运行试试):
sp_help s;
sp_help p;
sp_help j;
sp_help spj;
② 单条语句插入,往s表中插入如下信息:
SNO SNAME STATUS CITY
S9 匠心 20 广州
③ 批量插入数据(先建立示例表Stemp,然后将s表中的数据批量插入Stemp表)
4、 UPDATE(更新)
① 基本更新:
² 将“P3”零件更新为“红”色
² 在s表中,更新“S1”供应商的状态为15,城市为‘上海’
② 带有子查询的更新:
² 将上海供应商供应的零件更新为“红”色
5、 DELETE(删除)
① 基本删除:
² 删除S9供应商信息
② 带有子查询的删除:
² 删除SPJ表中上海供应商的供应情况