create or replace view testview as select empno,ename from emp where ename like ‘M%’ with check option; 这里我们创建了一个视图,并使用了with check option来限制了视图。 然后我们来看一下视图包含的结果: select * from testview得到: EMPNO ENAME ———- ———– 7654 MARTIN 7934 MILLER 这两...
View created. 首先来看一下INSERT SQL> insert into v_t1 values(1,'haha'); insert into v_t1 values(1,'haha') * ERROR at line 1: ORA-01402: view WITH CHECK OPTION where-clause violation --这里由于视图中定义了where id=2的条件并且加有with check option子句,所以插入id=1的记录就会报错。
SQL> delete from test1; 2 rows deleted. SQL> insert into test1_view values (1); 1 row created. SQL> insert into test1_view values (20); insert into test1_view values (20) * ERROR at line 1: ORA-01402: view WITH CHECK OPTION where-clause violation SQL> select * from test1; ID -...
update testview set ename = ‘Mike’ where empno = 7654; OK,这条更新语句可以执行,并没有什么问题,但是当我们执行另一条更新时: update testview set ename = ‘Robin’ where empno = ‘7654′; 就会出现ORA-01402: 视图 WITH CHECK OPTIDN 违反 where 子句的错误,这是因为什么呢? 这是因为前面我们...
update testview set ename = ‘Robin’ where empno = ‘7654′; 就会出现ORA-01402: 视图 WITH CHECK OPTIDN 违反 where 子句的错误,这是因为什么呢? 这是因为前面我们在创建视图时指定了witch check option关键字,这也就是说,更新后的每一条数据仍然要满足创建视图时指定的where条件,所以我们这里发生了错误...
CREATE [OR REPLACE] [FORCE|NOFORCE] VIEW view_name [(alias[, alias]...)] AS subquery [WITH CHECK OPTION [CONSTRAINT constraint]] [WITH READ ONLY] 语法解析: OR REPLACE :若所创建的试图已经存在,则替换旧视图; FORCE:不管基表是否存在ORACLE都会自动创建该视图(即使基表不存在,也可以创建该视图,但...
delete from test where where empno = 7654ORACLE 视图的 wi th check optionORACLE 视图的 wi th check option我们来看下面的例子:create or replace view test viewasselect empno,ename fr om emp where ename l ike ‘M%’ with check option;这里我们创建了一个视图,并使用了with check option来限制了...
下⾯是⼀个使⽤了 WITH CHECK OPTION 的视图定义的⽰例。要确保总是检查条件,WITH CHECK OPTION 是必需的。在这种情况下,我们希望确保 DEPT 总是 10。这会限制 DEPT 列的输⼊值。当使⽤视图插⼊新值时,总是强制执 ⾏ WITH CHECK OPTION。复制代码代码如下:CREATE VIEW EMP_VIEW2 (EMPNO,EMP...
oracle中with check option检查选项的意思
[WITH CHECK OPTION [CONSTRAINT constraint]] [WITH READ ONLY] 视图语法说明 1.or replace:代表修改view,就是原先已经创建了的话,再次创建同名的就会替换掉 2.force| noforce: 即使基表不存在也要建立该视图 | 基表不存在就不建立此视图,默认值。 3.alias: 视图中的列的名字(相当于给子查询的结果列起别名...