视图
(1)、视图是从一个或多个基本表、别名或视图中派生出来的,在检索数据时与基本表可以互换使用。当更改一个视图中的数据时,表本身中的数据也随之更改。通过创建视图,可以限制对敏感数据的访问,同时允许对其他数据的访问。
视图中的数据并不是存储在表之外的。换句话说,虽然视图的定义在系统编目中占用了空间,但是视图本身并不占用数据库中的空间。
视图的创建者至少需要拥有视图定义中引用的基本表上的 SELECT 特权。
关于所有已有视图的信息存储在:
● SYSCAT.VIEWS
● SYSCAT.VIEWDEP
● SYSCAT.TABLES
(2)、关于with check option
with check option 指定以下约束,即通过一个视图插入或更新的每一行必须符合视图的定义。不符合视图定义的行就是不满足视图的搜索条件的行。
例如,下面的命令:
create view emp_view2 (empno, empname, deptno) AS (SELECT id, name,
dept FROM employee WHERE dept = 10)with check option
当该视图被用于插入或更新新的值时,with check option 限制 dept 列的输入值。
[示例]-[创建视图]:
CREATE VIEW EMPSALARY AS SELECT EMPNO, EMPNAME, SALARY FROM PAYROLL,
PERSONNEL WHERE EMPNO=EMPNUMB
添加新评论0 条评论