Problem
You wish to prevent users, or an errant software application, from inserting values into certain table columns. For example, you wish to allow a program to insert into EMP, but only into the EMPNO, ENAME, and JOB columns.
Solution
Create a view on the table exposing only those columns you wish to expose. Then force all inserts to go through that view.
For example, to create a view exposing the three columns in EMP:
create view new_emps as select empno, ename, job from emp
It is also possible, but perhaps less useful, to insert into an inline view (currently only supported by Oracle):
insert into (select empno, ename, job from emp) values (1, 'Jonathan', 'Editor')
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/23895263/viewspace-681055/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/23895263/viewspace-681055/
本文介绍了一种通过创建视图来限制应用程序或用户只能向特定表的指定列插入数据的方法。例如,可以设置仅允许向EMP表的EMPNO、ENAME和JOB三列插入数据。此外,还提供了直接通过内联视图进行插入操作的示例。
1756

被折叠的 条评论
为什么被折叠?



