Microsoft
Software
Hardware
Network
Question : foreign key constraint error question
I have the following tables
CREATE TABLE `w_document_flat` (
`Accession_No` varchar(7) NOT NULL,
`Pub_Abbreviation` varchar(25) NOT NULL,
PRIMARY KEY (`Accession_No`)
) ENGINE=MyISAM
CREATE TABLE `descriptors` (
`descriptor_id` int(11) NOT NULL auto_increment,
`descriptor_name` varchar(500) NOT NULL,
PRIMARY KEY (`descriptor_id`)
) ENGINE=InnoDB
CREATE TABLE `w_descriptors` (
`descriptor_id` int(11) NOT NULL,
`Accession_No` varchar(7) NOT NULL,
PRIMARY KEY (`descriptor_id`,`Accessio
n_No`),
KEY `Accession_No` (`Accession_No`),
KEY `descriptor_id` (`descriptor_id`),
CONSTRAINT `Accession_No` FOREIGN KEY (`Accession_No`) REFERENCES `w_document_flat` (`Accession_No`) ON DELETE NO ACTION ON UPDATE NO ACTION,
CONSTRAINT `descriptor_id` FOREIGN KEY (`descriptor_id`) REFERENCES `descriptors` (`descriptor_id`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB
When I try and do an insert into the
insert into w_descriptors (descriptor_id, Accession_No) values ("0000001", 1);
I get the following message:
Error Code: 1452
Cannot add or update a child row: a foreign key constraint fails (`w/w_descriptors`, CONSTRAINT `Accession_No` FOREIGN KEY (`Accession_No`) REFERENCES `w_document_flat` (`Accession_No`) ON DELETE NO ACTION ON UPDATE NO ACTION)
I am really confused. Is it because the w_document_flat table is MyISAM?
Answer : foreign key constraint error question
Yes, "Both tables must be InnoDB tables and they must not be TEMPORARY tables. "
http://dev.mysql.com/doc/r
efman/5.1/
en/innodb-
foreign-ke
y-
constrai
nts.html
I ran into the same problem recently.
Random Solutions
DOS Batch Turnkey system for Win95
E-mail messages not displaying correctly
Error Creating Web Site: Exception from HRESULT: 0x800710D8
How do i do PXE Boot using windows 2008 server and Deployment Workbench
BCP Test and Backup Exec 2010 Catalogs
Special Query in Oracle 10 sqlplus
How to resize the attached image (.jpg file)
Juniper DMZ configuration
Ajax or flash..For online Jewellery designer ?
When I can #import a dll and when must I #import a tlb?