Я пытаюсь создать таблицу, в которой есть составной ключ, но получаю ошибку, чтобы проверить правильный синтаксис для использования рядом с «КАСКАДОМ». MySQL (версия-8.0.5)

#mysql #syntax #foreign-keys #cascade #composite-key

Вопрос:

 CREATE TABLE works_with(
  emp_id INT,
  client_id INT,
  total_sales INT,
  PRIMARY KEY (emp_id, client_id),
  FOREIGN KEY (emp_id) REFERENCES employee(emp_id) ON DELETE SET CASCADE,  #error syntax to use near #'CASCADE, FOREIGN KEY (client_id) REFERENCES client(client_id) ON DELETE SET ' at line 6

  FOREIGN KEY (client_id) REFERENCES client(client_id) ON DELETE SET CASCADE
);
 

Комментарии:

1. SET CASCADE не является допустимым вариантом ссылки. Допустимыми вариантами являются RESTRICT , CASCADE , SET NULL , NO ACTION , или SET DEFAULT . Все это есть в документации

Ответ №1:

Комментарий Гарета решает проблему. Измените ON DELETE SET CASCADE на ON DELETE CASCADE .