表和视图之间的Oracle DB关系(物化视图)

时间:2015-02-11 10:05:40

标签: java mysql oracle

如何在表和视图之间创建引用?我有一个视图,它包含两个通过UNION创建的表(这些表的ID是同一个顺控程序的唯一原因)。 我尝试在视图上创建主键并进行参考,但它对我不起作用?甚至可以使它像那样或物化视图。它的遗留项目包含非常大的数据模型和大量视图。

2 个答案:

答案 0 :(得分:1)

您无法在视图中使用键。这意味着

  • 您无法在视图中设置主键
  • 您无法引用外键中的视图

答案 1 :(得分:1)

根据oracle文档。你可以在视图上创建PK(禁用,未经验证),但是这个PK不能被FK引用,因为它没有经过验证

  

Oracle数据库不强制执行视图约束。但是,您可以通过对基表的约束来强制执行对视图的约束。

     

您只能指定唯一,主键和外键约束   在视图上,它们仅在DISABLE NOVALIDATE模式下受支持。您   无法定义对象列属性的视图约束。

来自http://docs.oracle.com/cd/B28359_01/server.111/b28286/clauses002.htm#SQLRF52163