也许我做错了,但我正在为我的一个项目设计数据库。
我有一个带有分类列的实体,它将实体分组为方便用户使用的类别。这些分类是用户预先定义的,并且是不可更改的(至少这是当前的设计)。
我试图决定是否应该有一个'entity classification'表,该表只包含一个'id'列作为主键,没有其他信息,以便在实体之间建立强制关系:classification->entityclassification:id。
我不打算在EntityClassification中使用名称/描述列,因为我当前的想法是,我需要支持这些预定义名称的本地化,这些名称将使用静态字符串表(如资源文件)完成,这些资源文件将根据其国家/语言下载到客户端。真的没有任何其他数据与我想要的这个实体分类相关,而一个表似乎是一个过度的杀戮?
这是这类问题的常见做法/推荐做法吗?我们使用的是sql server 2008,没有数据库的enum数据类型,这似乎是我真正想要实现的。

最佳答案

您只想确保Entity:Classification中的值仅限于您预先确定的列表吗?如果是的话,你需要的也许是acheck constraint
这样的约束不像外键那么灵活:为了改变我们必须放弃的检查值并重建约束,但是你说没有改变这些值的计划,所以不重要。

关于database - 仅单列/主键的表是否具有参照完整性?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3719062/

10-13 01:14