是否有一个数据库可以提供参照完整性的好处,并且能够使用SQL类型语言进行查询,还可以根据数据属性以及它们之间的关系来松散地定义实体吗?
例如,采用RBAC类型模型,您可以在其中拥有权限,用户,用户组和角色.复杂/灵活的模型可以具有以下规则:
在RDBMS中对上述模型进行建模将涉及创建大量交集表.理想情况下,我想在数据库中定义的只是实体本身(用户,角色等)以及一些强制属性.其他所有内容都是动态的(即不需要DDL),例如,我可以创建一个具有未预定义的新属性的用户.我还可以在尚未预定义的实体之间创建关系,尽管数据库将像普通RDBMS一样处理引用完整性.
通过创建一个存储实体的表和另一个存储关系等的表,可以在某种程度上在RDBMS中实现上述目的,但这会过度复杂化执行简单查询所需的SQL,并且还可能具有性能影响.
database rdbms referential-integrity nosql object-oriented-database