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

Czy możliwe jest wiele kluczy obcych w jednym polu?

To, co zwykle robisz, to konfigurowanie relacji wiele do wielu z pośrednią tabelą łączącą. Coś takiego jak:

CREATE TABLE product (
  `id` integer AUTO_INCREMENT NOT NULL,
  -- other cols --
  PRIMARY KEY (`id`)
);

CREATE TABLE certification (
  `id` integer AUTO_INCREMENT NOT NULL,
  -- other cols --
  PRIMARY KEY (`id`)
);

CREATE TABLE product_certification (
   `product_id` integer NOT NULL,
   `certification_id` integer NOT NULL,
   PRIMARY KEY (`product_id`, `certification_id`),
   CONSTRAINT `product_id_product_id` 
     FOREIGN KEY (`product_id`) 
     REFERENCES `product` (`id`) ON DELETE CASCADE,
   CONSTRAINT `certification_id_certification_id` 
     FOREIGN KEY (`certification_id`) 
     REFERENCES `certification` (`id`) 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. Nie można usunąć tabeli MySQL z powodu ograniczeń klucza obcego

  2. Wszystkie wartości ='s' w tabeli w błędzie PHP

  3. Obliczanie mediany za pomocą Mysql

  4. Porównanie kolumn Data tabeli z wygenerowaną listą dat - MYSQL

  5. Problem z bazą danych, jak przechowywać zmieniającą się strukturę danych