Din ALTER TABLE table ADD CONSTRAINT foreign_key FOREIGN KEY
er de samme, så de kan ikke være årsagen til fejlen.
(...tekst er fjernet)
Kan ikke forklare den mærkelige adfærd. Kan foreslå en løsning:
SET FOREIGN_KEY_CHECKS = 0;
DELETE FROM A WHERE ID=1;
SET FOREIGN_KEY_CHECKS = 1;