sql >> Databasteknik >  >> RDS >> Mysql

Använda en av kolumnerna i en sammansatt nyckel som en främmande nyckel

Som MySQL-dokumentation på främmande nycklar indikerar a> :

Så, om du använder innodb, tillåter MySQL dig inte att skapa en främmande nyckel på ett fält som inte är fältet längst till vänster i ett index.

Anledningen är att man i ett index med flera kolumner inte kan slå upp ett värde baserat på ett fält som inte är längst till vänster, därför kan indexet inte användas för att snabbt slå upp värdet för en främmande nyckelkontroll.

Detta beteende hos MySQL-index beskrivs i MySQL-dokumentationen på index för flera kolumner :



  1. Infoga en tidsstämpel i databasen via ContentValues

  2. Välja en fristående fulltextsökserver:Sphinx eller SOLR?

  3. Ta bort SCHEMABINDING från en användardefinierad funktion i SQL Server

  4. Ändra kolumnnamn i MySQL