Mysql
 sql >> база данни >  >> RDS >> Mysql

Външен ключ с няколко колони в MySQL?

Нещо като това трябва да го направи:

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 изисква външни ключове да бъдат индексирани, следователно индексът на референтните колони
  • Използването на синтаксиса на ограничението ви позволява да наименувате ограничение, което улеснява промяната и премахването на по-късен етап, ако е необходимо.
  • InnoDB налага външни ключове, MyISAM не. (Синтаксисът е анализиран, но игнориран)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Получаване на java.sql.SQLException:Операцията не е разрешена след затваряне на ResultSet

  2. Най-добра практика за създаване на индекси във вашите MySQL таблици – подвижни индексни компилации

  3. Как да намерите нечислови стойности в колона в MySQL

  4. Как мога да възстановя пълните привилегии на root потребителя на MySQL?

  5. Как да завъртите схема на MySQL обект-атрибут-стойност