《(7.2.1)--7.2用视图修改表中的数据.ppt》由会员分享,可在线阅读,更多相关《(7.2.1)--7.2用视图修改表中的数据.ppt(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1 1 用视图修改表中的数据本节课内容包括1、用视图对数据表中记录进行插入、修改、删除操作2、用视图对数据表中记录进行删除视图操作2 2 用视图修改表中的数据用户对视图可以进行查询操作。对视图的查询实际上仍是在查询基表上的数据,因为视图不是在物理上存储的数据,同样地,对视图中的记录进行的插入、修改、删除也是作用在基表上的。3 3 用视图修改表中的数据l操作视图的条件对视图进行查询、插入、修改以及删除的语法与表的完全一样,但对视图进行插入、修改、删除等操作,需要以下条件:(1)修改视图中的数据时,不能同时修改两个或者多个基表,可以对基于两个或多个基表或者视图的视图进行修改,但是每次修改都只能影响
2、一个基表。(2)不能修改那些通过计算得到的字段,例如包含计算值或者合计函数的字段。(3)如果在创建视图时指定了WITH CHECK OPTION选项,那么使用视图修改数据库信息时,必须保证修改后的数据满足视图定义的范围。(4)执行UPDATE、DELETE命令时,所删除与更新的数据必须包含在视图的结果集中。(5)如果视图引用多个表时,无法用DELETE命令删除数据,若使用UPDATE命令则应与INSERT操作一样,被更新的列必须属于同一个表。4 4 用视图修改表中的数据l使用视图向表中插入数据注意:(1)在Microsoft SQL Server 2008之后版本中,您可以指定带有指定数值月份
3、的日期数据。例如,5/20/97 表示1997 年5月20日。使用数值日期格式时,可以在字符串中以斜杠(/)、连字符(-)或句点(.)作为分隔符来指定月、日、年。(2)如果在创建视图时定义了限制条件(例如where 性别=女等等),或者基表的列允许取空值或者有默认值,而插入的记录不满足该条件时,仍然可以向表中插入记录,只是在视图中检索时不会出现新插入的记录。如果不想让上述情况发生,则可以使用with check option 选项限制插入不符合视图规则的视图。5 5 用视图修改表中的数据l使用视图修改表的数据使用视图可以修改数据记录,但应该注意的是,修改的只是数据库中的基表。l使用视图删除表中
4、的数据使用视图删除记录,可以删除任何基表中的记录,直接利用DELETE语句删除记录即可。但应该注意,必须指定在视图中定义过的字段来删除记录。6 6 用视图修改表中的数据l使用视图添加数据 【任务1】创建一个包含限制条件的视图并测试。创建一个视图“v_女学生”视图,限制条件为性别=女,然后插入了一条不满足限制条件的记录,再用SELECT语句检索视图和表。CREATE VIEW v_女学生ASSELECT student_no 学号,student_name 姓名,sex 性别,class_id 班级编号FROM t_studentWHERE sex=女WITH CHECK OPTIONGO7 7
5、 用视图修改表中的数据图7-12在视图中插入一条记录8 8 用视图修改表中的数据图7-13 插入一条错误记录插入一条记录:INSERT INTO v_女学生VALUES(20090640113,李文,男,44)9 9 用视图修改表中的数据图7-14插入一条记录成功修改上面的语句:INSERT INTO v_女学生VALUES(20090640113,李小文,女,44)1010 用视图修改表中的数据l使用视图修改表中的数据 【任务2】更新视图“v_女学生”,然后通过该视图修改“t_student”中的记录。UPDATE v_女学生SET 姓名=何小倩WHERE 学号=20090620146111
6、1 用视图修改表中的数据图7-15更新视图1212 用视图修改表中的数据l使用视图删除表中的数据 【任务3】利用视图“v_女学生”删除“t_student”表中姓名为李小文的记录。DELETE FROM v_女学生 WHERE 学号=200906401131313 用视图修改表中的数据图7-16能删除表中的数据1414 用视图修改表中的数据l任务小结用视图修改表中记录的注意事项:1)用视图向数据表中插入数据时,一定要注意所插入的值的个数要与视图的字段个数一致;所插入数据值要与条件相符;2)用视图修改表数据时,会联动修改相应的数据表;3)用视图删除表中数据时,其记录将会在相应的表中删除掉。1515 用视图修改表中的数据课程小结1、用视图插入表中数据操作2、用视图修改表中数据操作3、用视图删除表中数据操作