It's a common example between Persons and Orders. I just copied it from Internet as a test.
CREATE TABLE Persons (
ID int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int,
PRIMARY KEY (ID) );
CREATE TABLE Orders (
OrderID int NOT NULL,
OrderNumber int NOT NULL,
PersonID int,
PRIMARY KEY (OrderID),
FOREIGN KEY (PersonID) REFERENCES Persons(ID)
);
Till now it's all successful. But how can I drop the Foreign Key PersonID?
I tried this.
ALTER TABLE Orders
DROP FOREIGN KEY PersonID;
MySQL said:
1091 - Can't DROP 'PersonID'; check that column/key exists
you need to delete constraint and also the key. First find the constraint by doing the following
1) SHOW CREATE table Orders;
pick up value of CONSTRAINT.. in this screenshot 'fk_dayBreakUp_timetable'
2) ALTER TABLE Orders DROP foreign key << constraint_name >>
here you would do
3) ALTER TABLE Orders DROP key << column name >>
Hope this resolves your issue.
Identify the name of the constraint using the statement:
Use the result from
CONSTRAINT_NAME
in yourALTER TABLE
statement. For example:Answer derived from the MySQL Reference Manual