Можно ли связать поля id и role_id?

Вспоминаю SQL

Так не связывает:
ALTER TABLE `users` ADD FOREIGN KEY (
`role_id`
) REFERENCES `test2`.`role`( `id` )ON DELETE CASCADE ON UPDATE CASCADE

Так связывает:
ALTER TABLE `users` ADD FOREIGN KEY (
`role_id`
) REFERENCES `test2`.`role`( `role_id` )ON DELETE CASCADE ON UPDATE CASCADE


Можно ли связать role_id и id если эти названия не совпадают?
Сколько себя помню, когда имел дело с SQL, всегда названия id наследуя их от названия таблицы например:
"table_name" и "table_name_id" или "id_table_name"

Спрашиваю потому что в ТЗ указаны просто id без role_id. Я вот думаю там подразумевается что я их переименую, или всё таки надо связать id и role_id ?
  • Вопрос задан
  • 172 просмотра
Решения вопроса 2
alexey-m-ukolov
@alexey-m-ukolov Куратор тега MySQL
Можно ли связать role_id и id если эти названия не совпадают?

Можно, название колонок никакой роли не играет. А вот их тип должен быть полностью идентичным.
Ответ написан
Комментировать
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Можно. Названия не обязаны совпадать, должны совпадать только типы колонок.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы