Vraag : de buitenlandse zeer belangrijke vraag van de beperkingsfout

Ik heb volgende tables

CREATE- LIJST `w_document_flat `(
`varchar Accession_No `(7),
`varchar Pub_Abbreviation `(25) NIET NIETIG VERKLAREN niet NIETIG VERKLAREN,
PRIMAIRE ZEER BELANGRIJKE (`Accession_No `)
) ENGINE=MyISAM

CREATE- LIJST `- beschrijvers`(
`descriptor_id `int. (11) NIET ONGELDIGE auto_increment, varchar
`descriptor_name `(500) NIETIG VERKLAREN niet,
PRIMAIRE ZEER BELANGRIJKE (`descriptor_id `)
) ENGINE=InnoDB

CREATE- LIJST `(
`descriptor_id `int. (11) NIETIG VERKLAREN niet,
`varchar Accession_No `(7) NIET ONGELDIG,/> PRIMAIRE SLEUTEL
n_No `),
ZEER BELANGRIJKE `Accession_No `(`Accession_No `),
ZEER BELANGRIJKE `descriptor_id `(`descriptor_id `),
de BUITENLANDSE ZEER BELANGRIJKE (`Accession_No `) VERWIJZINGEN `w_document_flat `van de BEPERKING `Accession_No `(`Accession_No `) BIJ de SCHRAPPING GEEN ACTIE BETREFFENDE UPDATE GEEN ACTIE,
beschrijvers `van de VERWIJZINGEN `van de BEPERKING `descriptor_id BUITENLANDSE ZEER BELANGRIJKE (`descriptor_id `) `(`descriptor_id `) BIJ de SCHRAPPING GEEN ACTIE BETREFFENDE UPDATE GEEN ACTION
) ENGINE=InnoDB

When probeer ik en doe een tussenvoegsel in
insert in w_descriptors (descriptor_id, Accession_No) waarden („0000001“, 1);

I krijgt het volgende bericht: code
Error: 1452
kan een kindrij toevoegen of bijwerken niet: een buitenlandse zeer belangrijke beperking ontbreekt (`w/w_descriptors `de BUITENLANDSE ZEER BELANGRIJKE (`Accession_No `) VERWIJZINGEN `w_document_flat `, van de BEPERKING `Accession_No `(`Accession_No `) BIJ de SCHRAPPING GEEN ACTIE BETREFFENDE UPDATE GEEN ACTIE) werkelijk verwarde

I am.  Is het omdat de w_document_flatlijst MyISAM is?  

Antwoord : de buitenlandse zeer belangrijke vraag van de beperkingsfout

Ja, „Beide lijsten moeten lijsten InnoDB zijn en zij moeten geen TIJDELIJKE lijsten zijn. “

http://dev.mysql.com/doc/refman/5.1/en/innodb-foreign-key-constraints.html

Ik kwam onlangs het zelfde probleem tegen.

Andere oplossingen  
 
programming4us programming4us