【发布时间】:2011-12-13 18:58:44
【问题描述】:
对数据库架构相当陌生(计划使用 SQLite)。话虽如此,我正在考虑使用代理键,因为数据库当前包含一个复合键(3 列),它显示在我的大多数表中。我有几个表,其中包含 3 列的唯一键和包含一些信息的列;我也有一张表包含 3 列唯一键和相同的 3 列作为外键(许多父母)。将所有这些表合并到一个表中似乎没有意义,因为会有很多空字段。
如果我选择其中一个,会掉坑吗?通常认为哪一种更方便编程?
提前谢谢你。
【问题讨论】:
-
"3 columns for the unique key" -- 相同的 3 列?这听起来像是糟糕的架构设计。将表合并在一起。
NULLs比凌乱的LEFT JOINs问题更小。
标签: sql database sqlite database-schema