数据库实验数据更新和视图的建立与使用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验五
实验名称:数据更新和视图的建立与使用
一、实验目的
1.熟练使用INSERT/DELETE/UPDATE语句进行表的更新操作。
2. 理解视图的定义、视图的优点与视图的工作原理。
掌握在企业管理器和查询分析器中创建、修改及删除视图。
能够熟练掌握利用视图向表中插入、删除和修改数据。
二、实验原理
1.数据更新操作只能针对一个表进行,即每次只能在一个表中插入、删除和修改数据。
用INSERT语句可以通过使用V ALUES关键字一次只向一个表插入一条记录,也可以通过子查询向一个表中插入若干条记录;当使用DELETE和UPDATE语句实现表的删除和更改时,若题目中涉及多个表的信息,可以使用子查询来挑选出部分数据,以作为删除或更改的条件,也可以在语句中用FROM 子句给出题目中涉及的所有表,而在WHERE子句中给出多个表之间的连接条件。
2. 利用CREATE VIEW、ALTER VIEW 、DROP VIEW语句创建、修改及删除视图。
由于视图是虚表,通过视图向表中添加数据时必须满足一定的条件。
如果视图引用了多个数据表,那么在通过视图向数据表中添加数据时,这个语句只能指定同一个表中的字段。
如果通过一个引用了多个数据表的视图向这些数据表中添加数据时,必须书写多个INSERT语句。
通过使用多个表的视图对数据表进行更新也需要书写多个UPDATE语句,另外适用于INSERT操作的许多限制同UPDATE操作。
使用DELETE语句可以通过视图将数据表中的数据删除。
但如果视图应用了两个或两个以上的数据表,则不允许删除视图中的数据。
另外,通过视图删除的记录,不能违背视图定义的WHERE子句中的条件限制。
三、实验设备
安装有SQL SERVER 2005的计算机。
四、实验内容
凡是能用多种方法实现的,请用多种方法实现。
1、为各表添加若干条记录,必须符合实验二中设定的各种约束。
2、将每个员工的薪水上调10%。
3、删除sales表中作废的订单(其发票号码为‘I000000004’),其订货明细表中的数据也一并删除。
4.删除所有没有销售业绩的员工记录。
5.对那些只要有一笔销售业绩超过20000元的员工的薪水增加500元。
五、实验内容
以下操作中,有些在实现过程中可能会报错,请分析错误原因。
1、创建一个视图cust_view,该视图只含上海客户信息,即客户号、客户姓名、
住址。
2、利用cust_view视图添加一条记录数据。
(注意:分别查看customer表和该视
图的结果。
)
3、修改cust_view视图,该视图只含上海客户信息,即客户号、客户姓名、住址、
电。
4、删除视图中所有姓“王”的客户数据。
5、通过视图修改表内某一客户的姓名。
6、有两个基本表employee和sales,创建一个视图,该视图包含相同业务员的编
号、姓名、订单号、销售总金额。
7、将上述视图中订单号为10001的记录的销售金额改为60000。
8、给上述视图添加一条记录数据。
9、删除上述视图。