Oracle View Force而不是无效约束



是否有一种方法可以强制Oracle View中的列的无效约束。Oracle从底层源表获得了限制的视图。但是我在列上使用一些功能,使视图约束为null。我知道列中的数据不会为零。有没有办法强制它?你能帮忙吗?

create table a (col_1 date not null);
desc a;
Name  Null     Type 
----- -------- ---- 
COL_1 NOT NULL DATE 

CREATE OR REPLACE FORCE VIEW V1 
as select col_1+1 col_1 from a;
desc v1;
Name  Null Type 
----- ---- ---- 
COL_1      DATE 

上面是约束改变的示例。预先感谢。

这是不可能的。来自https://docs.oracle.com/database/121/.../clauess002.htm#sqlrf52180:

查看约束

Oracle数据库不强制执行查看约束。但是,您可以通过基础表上的约束对视图实施约束。

您只能在视图上指定唯一的,主键和外键约束,并且仅在禁用Novalidate模式下受支持。您无法在对象列的属性上定义视图约束。

最新更新