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

Podstawy kluczy obcych w MySQL?

FOREIGN KEYS po prostu upewnij się, że Twoje dane są spójne.

Nie poprawiają zapytań pod kątem wydajności, po prostu powodują, że niektóre błędne zapytania kończą się niepowodzeniem.

Jeśli masz taki związek:

CREATE TABLE department (id INT NOT NULL)
CREATE TABLE employee (id INT NOT NULL, dept_id INT NOT NULL, FOREIGN KEY (dept_id) REFERENCES department(id))

, nie możesz usunąć department jeśli ma jakiegoś employee s.

Jeśli podasz ON DELETE CASCADE do FOREIGN KEY definicji, wiersze odniesienia zostaną automatycznie usunięte wraz z wierszami odniesienia.

Jako ograniczenie FOREIGN KEY faktycznie spowalnia nieco zapytania.

Podczas usuwania z tabeli odniesienia lub wstawiania do tabeli odniesienia należy wykonać dodatkowe sprawdzenie.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sprawdzasz tabelę pod kątem nakładania się czasu?

  2. Użyj wyzwalacza, aby zatrzymać wstawianie lub aktualizację

  3. Serwer MySQL zniknął - dokładnie za 60 sekund

  4. Pozwól użytkownikom MySQL tworzyć bazy danych, ale zezwalaj na dostęp tylko do własnych baz danych

  5. Jakie są różnice między SQL a MySQL