Oracle 10g列掩码与关系视图比较

罗萍0822

罗萍0822

2016-02-19 14:38

给自己一点时间接受自己,爱自己,趁着下午茶的时间来学习图老师推荐的Oracle 10g列掩码与关系视图比较,过去的都会过去,迎接崭新的开始,释放更美好的自己。

     在前面的文章,我为大家介绍了如何使用Oracle 10g的虚拟私有数据库特征(VPD)掩藏某列数据TechRepublic的成员BrooklynPennyPincher建议我写一篇关于VPD与关系视图的比较文章。

     前面文章中小技巧的任务是假如department_id的值等于60,那么掩藏报告中的salary和commission_pct列。因为谓词是一个静态值,所以一个关系视图肯定也能够完成同样的任务。

     列表A显示了使用选择器CASE语句(这个语句在Oracle SQL的8i版本有了)比较depatment_id的值与60的关系的视图,假如相等返回NULL,假如是另外一个值则返回salary。一个类似的CASE语句也可以掩藏commission_pct列的数据。通过只授权访问视图而不是基本标(Employees)来保护数据。

     但是假如我稍稍改变一下规则,要求掩藏除了用户本部门内的所有工资。这将会怎样?     你的第一想法可能是简单地创建更多的视图- -每个部门一个- -并且授予每个用户访问对应的视图的权限。有很多理由说明这不是一个好的解决方案,具体如下:

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

     大量的视图可能增加维护负担(例如,假如一个改变了,所有其它的可能也需要改变)。新的部门可能要求新的视图,用户必须授予访问许可,当用户改变所在部门时,这些访问许可也必须改变。

     视图中实现的查询可能是静态值,而不是绑定变量,因此大量同等重要的查询副本将存储在共享池中。

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

     应用开发中必须为不同的用户调用不同的视图名,这也是复杂性的一个

展开更多 50%)
分享

猜你喜欢

Oracle 10g列掩码与关系视图比较

编程语言 网络编程
Oracle 10g列掩码与关系视图比较

用Oracle 10g列值掩码技术隐藏敏感数据

编程语言 网络编程
用Oracle 10g列值掩码技术隐藏敏感数据

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

如何利用oracle 10g的列值掩码技术隐藏敏感数据

编程语言 网络编程
如何利用oracle 10g的列值掩码技术隐藏敏感数据

用Oracle10g列值掩码技术隐藏敏感数据

电脑网络
用Oracle10g列值掩码技术隐藏敏感数据

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

不要忽视Oracle 10g STATSPACK

编程语言 网络编程
不要忽视Oracle 10g STATSPACK

ORACLE 10g 安装教程[图文]

编程语言 网络编程
ORACLE 10g 安装教程[图文]

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

Oracle DBA数据库日常维护完全手册

Oracle DBA数据库日常维护完全手册

玩转PowerPoint文档 实用美化技巧四则分享

玩转PowerPoint文档 实用美化技巧四则分享
下拉加载更多内容 ↓