- 1、本文档共56页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
视图的基本概念 视图是一个虚拟的表,在物理上并不存在. 视图可以看成是一个存储的查询,可以限制用户能看到和能修改的数据. 视图并不包含数据,只是从基表中读取数据 视图特点 着重于特定数据,增强数据的安全性 简化数据操作:每次生成报表时无需写或提交基础查询,只是查询视图. 自定义数据:允许用户以不同的方式查看数据 组合分区数据:将不同表的数据组合成单一的结果集 视图管理页面 视图管理页面 视图基本信息 有哪些信誉好的足球投注网站视图 创建视图 “创建视图向导”窗口 单击此图标, 可以选择方案 输入SQL语句 选中此复选框, 如果覆盖同名视图 单击“确定”按钮保存 创建视图 CREATE VIEW语句创建视图: create [or replace] [force | noforce] view [user.] view_name [column1[, column2]…] as query [with check option [constraint constraint_name] [with read only] 其中: or replace:表示如果同名的视图存在,则使用新视图替代已有的视图 Force:强制创建视图,不考虑基表是否存在以及是否具有使用基表数据的权限 Noforce:只有基表存在并具有权限才可以创建视图 User:创建视图的用户名 view_name:视图名 Column:指定视图中的列名 Query:生成视图的select语句 with check option:指定检查通过视图修改数据的操作 constraint_name:指定的约束名称 with read only:表示创建的视图只能检索数据,不能修改数据 创建视图 【例】创建员工信息视图V_EMP: Conn sys/oracle as sysdba 授予用户创建视图的权限 GRANT CREATE VIEW TO SCOTT; Conn scott/oracle; 创建视图 CREATE VIEW users_view(id,name,newsalary) AS SELECT userid,username,salary*1.1 From users; 创建视图 查看用户定义的视图 Select view_name from user_views 查看视图定义 Select view_name,text From user_views Where view_name=‘USERS_VIEW’; 查看视图结构 Desc users_view 修改视图 在CREATE VIEW语句中增加OR REPLACE子句,修改视图的定义。 如果要在users_view中增加一列 create or replace View users_view(id,name,type,newsal) As SELECT userid,username,usertype,salary*1.1 From users; 修改视图 编辑视图页面 单击“确定”按钮保存 修改SQL语句 删除视图 DROP VIEW语句删除指定视图。 【例】删除视图HR.V_EMP: DROP VIEW users_view; 单击此按钮 确认删除索引 视图中的约束 视图不仅可以限制能够看到的列,还可以限制可以返回的行 创建薪水超过2500的用户的视图 CREATE VIEW users_view(id,name,sal) AS SELECT userid,username,salary From users Where salary2500; 连接视图 基于多个基表的视图 Create view usertype_view As Select u.username,t.typename From users u,uesertype t Where u.usertype=t.typeid With read only—只读(即不能此视图执行insert、update或delete) 验证视图 以下操作将导致视图无效 改变列名,或从基本表或视图中完全删除列 删除构建视图的基本表或视图 改变基本表或视图,使其无效,将导致视图无效 使视图由无效变为有效的方法 使用alter view view_name compile命令重新编译视图 使用create or replace view命令重新创建视图 修正视图所基于的基本表或视图 验证视图 【例】修改基表,致使视图无效,重新编译基表,使其有效 查询视图的状态 Select object_name,status From user_objects Where object_name=‘USERS_VIEW’; 结果为: valid(
文档评论(0)