我有桌子 foo 和 bar:
create table foo(a int, b varchar(10),
primary key (a));
create table bar(a int, c int, d int,
primary key (a,c),
foreign key(a) references foo(a));
现在我有一个新列e
需要参与bar的主键。我怎样才能做到这一点?看来我应该能够删除主键、添加列并创建一个新的主键,但尝试删除主键会给我:
mysql> alter table bar drop primary key;
ERROR 1025 (HY000): Error on rename of './mydb/#sql-1e08_16a273' to './mydb/bar' (errno: 150)
只有包含外键列的主键才会出现这种情况。