sql >> Database teknologi >  >> RDS >> Mysql

Fejlkode:1822, når datatyper matcher, med sammensat nøgle

Problemet skyldes, at fremmednøglen, subj_code , er en del af en flerkolonne primær nøgle (PK) i den refererede tabel enrolment :

primary key (stud_id, subj_code, semester, year)

hvor denne kolonne (subj_code ) er ikke den længst til venstre .

Tabel student har ikke dette problem, fordi dens fremmednøglekolonne stud_id er kolonnen længst til venstre i PK i den refererede tabel.

For at løse dette kan du oprette et nyt indeks for den refererede kolonne:

ALTER TABLE enrolment ADD INDEX subj_code_idx (subj_code);

Bemærk: Du skal gøre det samme for den refererede tabel grade i den anden fremmednøgle.

Demo her



  1. Mekanisme Følger af Oracle, når vi tager hot backup

  2. Sådan overvåger du MySQL/MariaDB-databaser ved hjælp af Netdata på CentOS 7

  3. #1139 - Fik fejlen 'repetition-operator operand invalid' fra regexp

  4. SQLAlchemy, Psychopg2 og Postgresql COPY