我有这两个表:
CREATE TABLE Collaborators (
CustomerID INT NOT NULL,
FirstName VARCHAR(25),
LastName VARCHAR(25),
Street VARCHAR(50),
City VARCHAR(50),
State VARCHAR(25),
ZipCode INT,
Telephone VARCHAR(15),
PRIMARY KEY(CustomerID));
CREATE TABLE Orders (
OrderID INT NOT NULL,
CustomerID INT NOT NULL,
SKU VARCHAR(20),
Description VARCHAR(50),
PRIMARY KEY(OrderID),
FOREIGN KEY(CustomerID) REFERENCES Customers(CustomerID));
我的目标是将“客户”的任何实例更改为“合作者”。我试着一次一个,使用一个alter table语句。
ALTER TABLE Collaborators CHANGE CustomerID CollaboratorID INT;
ALTER TABLE Orders CHANGE CustomerID CollaboratorID INT;
这是 MySQL 向我吐出的错误代码:
<块引用>错误 1025 (HY000):将“./QuantigrationUpdates/#sql-668_24”重命名为“./QuantigrationUpdates/Collaborators”时出错(错误号:150)
任何帮助将不胜感激。我认为我不能简单地更改列名,因为它们有键约束,但我不知道如何解决这个问题。谢谢。
更新:我可以使用 CREATE VIEW 来解决关键约束吗?