Прежде чем приступить к дальнейшей работе, взгляните на mediawiki.org .
В данных примера {имя, тип} однозначно идентифицирует каждую строку. Но ваши данные образца не являются репрезентативными. Имена не являются уникальными в реальном мире, поэтому вам, вероятно, нужен какой-то другой способ идентификации людей. Простое добавление автоинкрементного идентификационного номера в качестве первичного ключа не сработает, поскольку допускает глупости, подобные этой.
id | name | type | content |
--------------------------------------
1 | John Doe | overview | some text |
2 | John Doe | overview | some text |
3 | John Doe | overview | some text |
4 | John Doe | overview | some text |
Сколько разных людей? (Есть 3. Джон Дел с идентификаторами 1 и 3 - это одно и то же лицо.) УНИКАЛЬНОЕ ограничение на {имя, тип} также не поможет, потому что это позволит только одному человеку по имени "Джон Доу" базы данных.
Так что еще вы знаете, что вы можете использовать для идентификации людей? Адрес электронной почты? (Не ищите волшебную пулю здесь. Там нет ни одного. Даже адреса электронной почты могут быть разделены. Вы просто ищете что-то лучше, чем «имя».)