我创建了这种类型:
create type baseType as Object(...) NOT Instantiable not Final
我想在某些字段中添加约束。问题是not instantiable
中的这种类型,因此,我无法在其字段中添加约束。那么,当我创建我的继承类型
create type childType1 under baseType (...)
create type childType2 under baseType (...)
我必须为所有子表添加约束。这是正确的方法吗?我认为只有在父类型中才能在公共字段上添加约束。有没有办法做到这一点?
答案 0 :(得分:2)
您根本无法向对象类型添加约束 - 约束在表上。如果对象不可实例化,则不能有基于它的表,因此没有约束。
我想答案是使对象类型为Instantiable。然后,您可以使用约束创建基于它的表。当然,这些约束不会被子类型“继承”。
然而,所有这一切,我个人都避免使用Oracle对象类型。