Там есть одно обстоятельство про автоинкрементный PK.
В MySQL (и SQLServer и во многих других РСУБД) таблицы хранятся в виде кластерного индекса по PK.
Это делает достаточно дорогими вставки в "центр" таблицы - надо раздвигать дерево, не полностью заполняются
индексные страницы, теряется высокая плотность данных, растёт IO при чтении.
Поэтому рекомендуют делать PK монотонно возрастающими во времени, в процессе добавления новых данных.
Тогда типа почти всегда добавление идёт в последнюю страницу данных и всё как бы чики-пики.
Один из видов таких индексов - это автоинкрементное поле, или identity, как ещё его называют (или sequence)
Вот именно его и рекомендуют применять для PK, тем более это удобно в проектировании, ибо естественных ключей почти никогда не бывает и автоинкремент вытекает ещё и из этого обстоятельства.
Так что вот так...