sql >> Databasteknik >  >> RDS >> Mysql

Flera kolumn främmande nyckel i MySQL?

Något sådant här borde göra det:

CREATE TABLE MyReferencingTable AS (
   [COLUMN DEFINITIONS]
   refcol1 INT NOT NULL,
   rofcol2 INT NOT NULL,
   CONSTRAINT fk_mrt_ot FOREIGN KEY (refcol1, refcol2)
                        REFERENCES OtherTable(col1, col2)
) ENGINE=InnoDB;
  • MySQL kräver att främmande nycklar indexeras, därav indexet på referenskolumnerna
  • Användning av begränsningssyntaxen gör att du kan namnge en begränsning, vilket gör det lättare att ändra och ta bort vid ett senare tillfälle om det behövs.
  • InnoDB upprätthåller främmande nycklar, MyISAM gör det inte. (Syntaxen tolkas men ignoreras)


  1. postgresql-fel PANIC:kunde inte hitta en giltig kontrollpunktspost

  2. Placera markördata i en array

  3. Hur man beräknar marginal i MySQL

  4. Exportera specifika rader från en PostgreSQL-tabell som INSERT SQL-skript