mysql更改约束名称,怎么样?

时间:2013-04-24 15:42:27

标签: mysql constraints rename

create table Foo(
 userId bigint(20) not null,
 KEY `Foo_userId` (`userId`),
 CONSTRAINT `Foo_userId` FOREIGN KEY (`userId`) REFERENCES `User` (`id`)
);

如何将键/约束名称从Foo_userId更改为Bar_userId,只需更改名称。我知道他们可以先丢弃,然后重新创建它们。我正在寻找一种简单的方式,如

alter table Foo rename KEY Foo_userId Bar_userId;
alter table Foo rename CONSTRAINT Foo_userId Bar_userId;

mysql中有这样的东西吗?感谢。

1 个答案:

答案 0 :(得分:0)

要更改约束名称或属性,可以删除旧的外键约束并添加新的外键约束。这是它真正对我有用的唯一解决方案。

alter table FOO 
drop foreign key Foo_userId,
add constraint Bar_userId foreign key (`userId`) references`User` (`id`)

Here是另一个帮助我的答案。