Czy źle jest używać nazwy użytkownika jako klucza podstawowego w projekcie bazy danych?

Powiedziano mi przez przyjaciela:

Jakiego unikalnego klucza używasz? Mam nadzieję, że nie zapisujesz całej nazwy użytkownika --- to zużyje za dużo miejsca na stole! Przypisz unikalny identyfikator użytkownika do każdej (unikalnej) nazwy użytkownika i zapisz ten identyfikator użytkownika (powinien być INTEGER UNSIGNED auto_increment lub BIGINT UNSIGNED auto_increment). Nie zapomnij utworzyć odniesienia

KLUCZ ZAGRANICZNY (userID) REFERENCJEusertable (userID) we wszystkich tabelach przy użyciu identyfikatora użytkownika.

Czy powyższe stwierdzenie jest prawidłowe? Dlaczego lub dlaczego nie?

questionAnswers(2)

yourAnswerToTheQuestion