Давайте использовать цифры и буквы. Мои номера являются моим основным ключом. Они всегда были эксклюзивными, поэтому я позволил базе данных вращаться вокруг цифр. Буквы представляют разные типы данных, которые находятся под числами, которые являются первичным ключом. Иногда есть a_1, a_2, a_n, b_1, b_2, b_n и т. Д.
1 равно a, b и c
2 равно b, c и d ...
Итак, все вращается вокруг числового типа данных.
Теперь, вот где у меня есть ког в моем маре:
a_1 и a_2 равны 1.
Похоже, это не страшно, но есть какая-то проблема с общением. Они равны, когда вы читаете слева направо, но не когда вы читаете справа налево.
Даже если я объясню это другими словами, кажется, что это не имеет значения, но в моем первичном ключе есть проблема исключительности. Я видел пример в книге, где говорилось, что это часто случается со временем. Например, если у вас есть имя человека: «Мэри Смит», а затем она выходит замуж и становится «Мэри Чарльз», тогда вам нужно добавить новое имя. Если вы не планировали это, то вам нужно добавить поле даты. Однако книга не охватывает то, как я могу заставить данные всегда появляться с обоими именами. Итак, я хочу убедиться, что каждый раз, когда кто-то ищет имя Мэри Смит, он получает Мэри Смит; Мэри Чарльз