/ / Junction таблица без първичен ключ - mysql, sql, innodb, кръстосана таблица

Разклонителна таблица без първичен ключ - mysql, sql, innodb, кръстосана таблица

Кажи, че имам кръгла маса, за да реша много отношения, които имам между две маси. Моята кръстовища също има собствена колона "Метод", за да опише връзката. Таблица на връзките Пример

Обикновено бих направил комбиниран първичен ключ[a], [b] и [метод] (методът трябва да бъде част от това, което прави един ред уникален), но проблемът ми е, че полето [метод] може да бъде NULL. Затова не мога да го добавя към първичния ключ.

Така че това, което направих е да създам уникален индекс:

ALTER TABLE A_B ADD UNIQUE INDEX `Unique` (`a`, `b`, `method`);

Масата няма първичен ключ. Това ли е добре да направя или да направя нещо различно?

Отговори:

1 за отговор № 1

Използването на първичен ключ не е единственият начин да се осигури уникалност на записите. Има уникално ограничение, което можете да приложите, за да постигнете това, което е необходимо.

http://www.w3schools.com/sql/sql_unique.asp