Shouldn't this part change?
From
CONSTRAINT `fk_contact`
FOREIGN KEY (`contact_PK`)
REFERENCES `Abramsdb`.`customer` (`customer_PK`)
to
CONSTRAINT `fk_contact`
FOREIGN KEY (`contact_PK`)
REFERENCES `Abramsdb`.`contact` (`contact_PK`)
Seems strange to have both foreign keys referencing the same table and key.