执行创建外键的语句是:
alter table osc_forum_fields add constraint FK_forum_value foreign key (forum)
references osc_forums ( id );
执行错误信息是:
[SQL] alter table osc_forum_fields add constraint FK_forum_value foreign key (forum)
references osc_forums ( id );
[Err] 1005 - Can't create table 'oschina.#sql-654_1a' (errno: 150)
经测试发现原来 osc_forums 表的类型是 MyISAM ,而 osc_forum_fields 表是用 InnoDB 创建的,因此无法创建外键,将 osc_forum_fields 表重建为 MyISAM 后问题解决。