sql >> Databasteknik >  >> RDS >> Mysql

MySQL främmande nycklar - hur upprätthåller man en-till-en över tabeller?

Att upprätthålla en 1:0-1 eller 1:1 relation kan uppnås genom att definiera en unik begränsning på den främmande nyckelns kolumner, så att endast en kombination kan existera. Normalt skulle detta vara den primära nyckeln för den underordnade tabellen.

Om FK är på en primär eller unik nyckel för de refererade tabellerna kommer det att begränsa dem till värden som finns i den överordnade och den unika begränsningen på kolumnen eller kolumnerna begränsar dem till unika. Detta innebär att den underordnade tabellen endast kan ha värden som motsvarar den överordnade i de begränsade kolumnerna och varje rad måste ha ett unikt värde. Genom att göra detta tvingar den underordnade tabellen att ha högst en rad som motsvarar den överordnade posten.



  1. Store accessor problem:Kan inte läsa gamla redan lagrade json objekt serialiserade (hash) värden i mysql databas i Rails 4

  2. Mysql FIND_IN_SET i where-satsen

  3. Tyska Umlauts i MYSQL INSERT

  4. Uppdatera med PDO-utlåtande