Я вот задумался над таким вопросом. Сколько смотрел туториалов по созданиям сайтов, всегда у всех была та самая автоинкрементная праймари кей колонка ID, я делаю любые проекты, всегда вписываю ID, даже сам фреймворк Laravel при создании миграций автоматически вписывает $table->increments('id');
Даже ситуация: есть табличка TEAM в которой перечислены просто 10 сотрудников компании, и нужно их всех вывести на страницу сайта "Команда". Структуру БД представляю примерно так: полное имя, возраст, должность, немного о сотруднике. Потом просто выбрать ВСЕ строки из БД и впихнуть их в вид (то есть тут ID не нужен, мы обращаемся не к конкретному человеку с ID, а сразу выбираем всех без исключения)
Или я не прав? Или ID нужен всегда?
Если рассматривать mysql innodb, то там даже если вы не добавите id, при отсутствии первичного ключа будет создан системный (скрытый для вас) первичный ключ.
Что касается конкретно ID, то нет, именно этот столбец в таблице не обязателен.
Но вот иметь первичный ключ крайне желательно. В его роли может выступать другой столбец (или несколько) содержащий уникальные данные однозначно идентифицирующие запись
Ну то есть вообще если у меня во всех таблицах будет ID, то это вреда не причинит, и лучше добавлять его, верно?
Другими словами, если нет id - не моветон ли?