Я пытаюсь удалить столбец внешнего ключа в таблице, которую я назвал ProductInvoice. Столбец, который я пытаюсь удалить, имеет имя PersonID и находится из таблицы Person. Когда я запускаю запросОшибка MySql 1025
ALTER TABLE ProductInvoice
DROP COLUMN PersonID;
Я получаю эту ошибку ...
Error Code: 1025. Error on rename of './jkripal/#sql-91c_19ff0' to './jkripal/ProductInvoice' (errno: 150)
Любые советы о том, как устранить это? Я просмотрел этот сайт и не могу найти ответы на них.
Эти результаты SHOW CREATE TABLE ProductInvoice
'ProductInvoice', 'CREATE TABLE `ProductInvoice`
(\n `ProductInvoiceID` int(11) NOT NULL AUTO_INCREMENT,
\n `PersonID` int(11) DEFAULT NULL,
\n `ProductID` int(11) NOT NULL,
\n `InvoiceID` int(11) NOT NULL,
\n `TravelDate` varchar(255) DEFAULT NULL,
\n `TicketNote` varchar(255) DEFAULT NULL,
\n `Quantity` int(11) DEFAULT NULL,
\n `InsuranceTicketCode` varchar(255) DEFAULT NULL,
\n PRIMARY KEY (`ProductInvoiceID`),
\n KEY `fkPerson` (`PersonID`),
\n KEY `fk_ProductInvoice_to_Product` (`ProductID`),
\n KEY `fk_ProductInvoice_to_Invoice` (`InvoiceID`),
\n CONSTRAINT `ProductInvoice_ibfk_1` FOREIGN KEY (`PersonID`) REFERENCES `Person` (`PersonID`),
\n CONSTRAINT `ProductInvoice_ibfk_2` FOREIGN KEY (`ProductID`) REFERENCES `Product` (`ProductID`),
\n CONSTRAINT `ProductInvoice_ibfk_3` FOREIGN KEY (`InvoiceID`) REFERENCES `Invoice` (`InvoiceID`)
\n) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8'
Посмотрите, как найти и удалить внешний ключ http://stackoverflow.com/a/19668812/1745672 – Mihai
Опубликовать результат 'SHOW CREATE TABLE ProductInvoice' – Mihai
@Mihai Я отредактировал основное сообщение –