规范化数据库的约定规定,处理多变量依赖关系的最佳实践是将它们分离到具有两列的自己的表中。一列是原始表的主键(例如,客户姓名,其中有一个),而另一列是具有多个值的值(例如,电子邮件或电话-客户可能有多个) . 这两列一起构成了分离表的主键。
但是,在构建规范化数据库时,我经常发现命名这些衍生表很麻烦。很难为这些表想出一个有意义的名称。是否有一种标准方法可以将这些表标识为多变量依赖表,如果没有其他表的存在,这些表就毫无意义?我能想到的一些例子(参考上面的例子)是“customer_phones”或“customer_has_phones”。我不认为只有“电话”会很好,因为这并不能确定此表与客户表相关并严重依赖于客户表。