Oracle视图
2018.9.12
视图中的数据和表中的数据相互关联,请小心操作
创建视图
使用以下sql语句完成视图的创建
创建或替换视图视图名称
as
与选择视图所需的字段从视图相对应的表
[ with只读]
添加with只读:后,视图为只读,无法更改
视图权限相关
在实际的APP应用程序中,不能向用户授予所有表和视图的所有操作权限,因此必须设置特定的用户权限(必须在本地具有高权限级别)。
管理员设置
首先,使用sql创建新用户
创建用户用户名identified by密码
然后使用
权限名称:权限有很多种,可以输入表示所有权限的all
还有事要用
授权创建会话到用户名
允许用户访问数据库
用户设置
我们已经授予了查询权限,所以直接在sql中查询
select * from管理员名称.视图名称
注:需要确定是哪个管理员分配了此权限
然后,可以通过管理员名称.视图名称来调查内容
最佳化
我们刚才完成了向用户查询单个视图的过程。
但是,我们希望从安全性和用户体验的角度优化查询过程
管理员.您可以直接向用户查询视图,而不是查询视图名称
此时,可以使用oracle拥有的同义词来解决问题
同义词优化查询过程
首先,必须授予当前用户创建同义词的权限
授权创建同步到用户名
然后,登录用户创建同义词并指向上一个管理员名称.视图名称
create synonym同义词名称for之前的管理员名称.视图名称
建议使用原始视图名称作为同义词名称来提高视图的安全性