使用视图配合With Check Option实现复杂校验
以Oracle的HR模式为例.创建一个With Check Option视图

用法一,限制可以Insert的字段.以上面的视图为例,只能Insert department_id,department_name,location_id三个字段.
而没有在视图中出现的Manager_id 则不能Insert.
用法二,复杂校验.
以上视图,只有部门名称以IT开头,并且location_id为1700的数据,才能Insert
这种校验是Check约束做不到的.

参考:
Oracle查询优化改写 4.4 第57页
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29254281/viewspace-1816493/
,如需转载,请注明出处,否则将追究法律责任。