数据库应用基础第六章视.ppt
《数据库应用基础第六章视.ppt》由会员分享,可在线阅读,更多相关《数据库应用基础第六章视.ppt(36页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1 1第六章第六章视图视图2 2复习复习什么是数据完整性?什么是数据完整性?数据完整性的分类?数据完整性的分类?3 31什么是数据完整性?什么是数据完整性?数据的一致性和准确性数据的一致性和准确性实体完整性实体完整性域完整性域完整性引用完整性引用完整性用户自定义完用户自定义完整性整性数数据据完完整整性性的的分分类类行行列列表表表表4 4本章主要内容本章主要内容6.1 6.1 视图概述视图概述6.2 6.2 创建视图创建视图6.3 6.3 视图的修改和删除视图的修改和删除5 56.1 6.1 视图概述视图概述1 视图的基本概念视图的基本概念2 使用视图的优点和缺点使用视图的优点和缺点(1 1)隐
2、蔽数据库的复杂性)隐蔽数据库的复杂性(2 2)控制用户提取数据)控制用户提取数据(3 3)简化数据库用户管理)简化数据库用户管理(4 4)改进性能)改进性能6 61 视图的基本概念视图的基本概念 数据视图数据视图是另一种在一个或多是另一种在一个或多个数据表上观察数据的途径,可以个数据表上观察数据的途径,可以把数据视图看作是一个能把焦点定把数据视图看作是一个能把焦点定在用户感兴趣的数据上的监视器,在用户感兴趣的数据上的监视器,用户看到的是用户看到的是实时数据实时数据 视图可以被看成是视图可以被看成是虚拟表虚拟表或或存存储查询储查询,用户可以通过视图来插入、,用户可以通过视图来插入、更改和删除数据
3、更改和删除数据 7 7例例6-16-1:图书管理员现在需要查询图书的借用历:图书管理员现在需要查询图书的借用历史记录,确认图书的借用情况,目前有几本图史记录,确认图书的借用情况,目前有几本图书被借出,由哪些人借用,借用日期是何时。书被借出,由哪些人借用,借用日期是何时。图书的名称,借阅人的名字以及相关借用日期,图书的名称,借阅人的名字以及相关借用日期,分别存在三个不同的表分别存在三个不同的表book_infobook_info、borrower_infoborrower_info和和lend_listlend_list内,给内,给SQLSQL查询带来查询带来的一定的复杂性。采用视图的方法,能够
4、很好的一定的复杂性。采用视图的方法,能够很好的解决该问题。视图可以使得所有需要显示的的解决该问题。视图可以使得所有需要显示的图书借用信息好像都记录在一张表内一样。下图书借用信息好像都记录在一张表内一样。下面建立系统中的视图面建立系统中的视图lendbooklendbook:8 8useLibrary_DBgoCREATEVIEWlendbookASSELECTlend_list.book_id,lend_list.borrower_id,lend_list.lend_date,lend_list.back_date,book_info.nameASbookname,borrower_info.
5、nameFROMlend_listINNERJOINbook_infoONlend_list.book_id=book_info.book_idINNERJOINborrower_infoONlend_list.borrower_id=borrower_info.id需要查询所需的图书借阅历史记需要查询所需的图书借阅历史记录时,只需执行如下查询语句:录时,只需执行如下查询语句:SELECT*FROMlendbook9 92 使用视图的优点和缺点使用视图的优点和缺点(1 1)隐蔽数据库的复杂性)隐蔽数据库的复杂性 开发者可以在不影响用户使用数据开发者可以在不影响用户使用数据库的情况下可以改变数据
6、库内容,即使库的情况下可以改变数据库内容,即使在基表发生更改或重新组合的情况下,在基表发生更改或重新组合的情况下,用户还能够通过视图用户还能够通过视图获得一致获得一致和和非变化非变化的数据。的数据。10102 使用视图的优点和缺点使用视图的优点和缺点(2 2)控制用户提取数据)控制用户提取数据 通过将某些通过将某些不需要的不需要的、敏感的敏感的或是或是不适当的数据控制在视图之外不适当的数据控制在视图之外,可以实,可以实现为用户定制其个人所使用的表。实际现为用户定制其个人所使用的表。实际上这也是一种安全机制。用户可以访问上这也是一种安全机制。用户可以访问某些数据,进行查询和修改,但是表或某些数据
7、,进行查询和修改,但是表或数据库的其余部分是不可见的,也不能数据库的其余部分是不可见的,也不能进行访问。进行访问。11112 使用视图的优点和缺点使用视图的优点和缺点(3 3)简化数据库用户管理)简化数据库用户管理 通过通过定义不同的视图定义不同的视图及及有选择地授有选择地授予予视图上的视图上的权限权限,可以将用户、组或角,可以将用户、组或角色色限制在不同的限制在不同的数据子集内。数据子集内。12122 使用视图的优点和缺点使用视图的优点和缺点(3 3)简化数据库用户管理)简化数据库用户管理 l可以将访问限制在基表中可以将访问限制在基表中行的子集行的子集内。内。l可以将访问限制在基表中可以将访
8、问限制在基表中列的子集列的子集内。内。l可以将访问限制在基表中可以将访问限制在基表中列和行的子集列和行的子集内。内。l可以将访问限制在符合可以将访问限制在符合多个基表联接多个基表联接的行内。的行内。l可以将访问限制在基表中可以将访问限制在基表中数据的统计汇总数据的统计汇总内。内。l可以将访问限制在可以将访问限制在另一个视图的子集内另一个视图的子集内或或视图视图和基表组合的子集和基表组合的子集内。内。例:定义一个视图,其中只含有例:定义一个视图,其中只含有管理类书籍或计算机应用类书籍管理类书籍或计算机应用类书籍的行,向用户隐藏有关其它类型的行,向用户隐藏有关其它类型书籍的信息。书籍的信息。例:定
9、义一个视图,其中含有例:定义一个视图,其中含有booksbooks表中的所有行,但省略了表中的所有行,但省略了 price price 和和 discount discount 列等敏感信息。列等敏感信息。例:定义一个视图,其中只含有管例:定义一个视图,其中只含有管理类书籍或计算机应用类书籍的行,理类书籍或计算机应用类书籍的行,同时含有同时含有booksbooks表中除了表中除了price price 和和 discount discount 列的其他列,隐藏了其他列的其他列,隐藏了其他书籍信息和敏感列的信息。书籍信息和敏感列的信息。例:定义一个视图,它联接表例:定义一个视图,它联接表 boo
10、ksbooks和和authorsauthors表以显示作者姓名及其撰表以显示作者姓名及其撰写的书籍。该视图隐藏作者的个人信写的书籍。该视图隐藏作者的个人信息以及著作的财务信息。息以及著作的财务信息。例:定义一个视图,其中只含有例:定义一个视图,其中只含有每类书籍的平均价格。每类书籍的平均价格。13132 使用视图的优点和缺点使用视图的优点和缺点(4 4)改进性能)改进性能 通过在视图中通过在视图中存储复杂查询的运算存储复杂查询的运算结果结果并为其他查询提供这些并为其他查询提供这些摘要性的结摘要性的结果果使数据库的使数据库的性能得到提高性能得到提高,视图还具,视图还具备备分割数据分割数据的功能,
11、而且可以把分割后的功能,而且可以把分割后独立的数据放置在不同的计算机上。独立的数据放置在不同的计算机上。14146.2 6.2 创建视图创建视图1 视图的创建视图的创建2 视图定义信息查询视图定义信息查询(1 1)使用)使用Microsoft SQL Server Microsoft SQL Server Management Studio Management Studio管理界面管理界面(2 2)通过执行系统存储过程)通过执行系统存储过程 查看视图的定义信息查看视图的定义信息 15151 视图的创建视图的创建CREATEVIEW.view_name(column,.n)WITHENCRYP
12、TIONASselect_statementWITHCHECKOPTION创建的视图的名称创建的视图的名称视图中列的字段名视图中列的字段名对含有对含有CREATEVIEW正文的正文的syscomments表项进行加密表项进行加密定义视图的定义视图的select语句语句强制对视图执行的强制对视图执行的所有数据修改语句遵照在所有数据修改语句遵照在定义视图的定义视图的selectstatement中设置的条件中设置的条件 1616例例6-26-2:本例建立的是系统中另外一个非常:本例建立的是系统中另外一个非常有用的视图有用的视图book_info_viewbook_info_view,通过这个视,通
13、过这个视图,系统可以很容易的从表图,系统可以很容易的从表book_infobook_info、classclass和和book_statebook_state中查询完整的图书信息中查询完整的图书信息,以方便显示给用户进行查看。,以方便显示给用户进行查看。1717use Library_DBuse Library_DBgogoCREATE VIEW book_info_view CREATE VIEW book_info_view ASASSELECT SELECT book_info.book_id,book_info.name,book_info.author,book_book_info.
14、book_id,book_info.name,book_info.author,book_info.publish,info.publish,book_info.ISBN,book_info.introduction,book_info.languagbook_info.ISBN,book_info.introduction,book_info.language,book_info.price,e,book_info.price,book_info.pressmark,class.name AS book_info.pressmark,class.name AS classname,book_
15、state.leftnum,classname,book_state.leftnum,book_state.number,book_info.class_idbook_state.number,book_info.class_idFROM book_info FROM book_info INNER JOIN book_state ON book_info.book_id=INNER JOIN book_state ON book_info.book_id=book_state.book_id book_state.book_id INNER JOIN class ON book_info.c
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 应用 基础 第六
限制150内