Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Zmień tabelę, aby podać ograniczenie klucza obcego

Nie dodajesz ograniczenia w tej instrukcji, dodajesz ograniczenies :każda z dwóch klauzul FOREIGN KEY oznacza osobne ograniczenie. Jednak zgodnie z podręcznikiem , powinieneś być w stanie dodać tyle ograniczeń kluczy obcych w pojedynczej instrukcji ALTER TABLE, ile jest to konieczne. Wystarczy dołączyć ADD przed każdym ograniczeniem.

Zwróć uwagę, że nazwy ograniczeń dotyczą indywidualnie dodawanych ograniczeń, więc możesz chcieć określić CONSTRAINT name dla drugiego klucza obcego, jeśli chcesz, aby miał określoną nazwę. To samo z ON UPDATE/ON DELETE :dotyczą klucza obcego, który je bezpośrednio poprzedza.

Skorygowane stwierdzenie może więc wyglądać tak:

ALTER TABLE users_role_map

ADD CONSTRAINT FK_users_role_map1
FOREIGN KEY (email) REFERENCES usert(email)
ON UPDATE CASCADE
ON DELETE CASCADE,

ADD CONSTRAINT FK_users_role_map2
FOREIGN KEY (id) REFERENCES rolet(id)
ON UPDATE CASCADE
ON DELETE CASCADE;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Wybierz tylko wiersze, w których istnieje wiele relacji

  2. Zwiększanie bezpieczeństwa logowania

  3. Serwer MAMP mysql nie uruchamia się. Żadne procesy mysql nie są uruchomione

  4. MySQL:GROUP_CONCAT z ORDER BY COUNT?

  5. jak utworzyć zapytanie MySql, aby wyświetlić saldo bieżące z kredytów i debetów, gdy wielu klientów ma indywidualne salda