首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于mysql上的外键

关于mysql上的外键
EN

Stack Overflow用户
提问于 2012-06-14 16:08:14
回答 1查看 103关注 0票数 0

我正在将一个旧的Sybase数据库迁移到MySQL,并且我必须创建外键。现在,由于Sybase导出数据,我尝试使用它在MySQL上的查询:

代码语言:javascript
复制
ALTER TABLE Mosaico.fornit_col
ADD FOREIGN KEY fkey_fco_fornit_maz ( fco_idformaz ) 
REFERENCES Mosaico.fornit_maz ( fma_id );
--
ALTER TABLE Mosaico.fornit_col
ADD FOREIGN KEY fkey_fco_mater_col ( fco_idmatcol ) 
REFERENCES Mosaico.mater_col ( mco_id );
--

而且看起来效果很好。如果我在MySQL管理控制台上执行它们,查询会正常工作,但在工作台上,第二个查询会显示以下错误:

代码语言:javascript
复制
ALTER TABLE Mosaico.fornit_col ADD FOREIGN KEY fkey_fco_mater_col ( fco_idmatcol )  REFERENCES Mosaico.mater_col ( mco_id ) Error Code: 1050. Table '.\mosaico\fornit_col' already exists

有什么问题吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-06-16 02:13:01

在这里查看错误报告:

MySQL Bug 55296

最后,有问题的人升级了他们的服务器,并解决了问题。从阅读它,我不确定其中是否有某个地方的bug。他们确实有一些变通方法,比如放入约束名称/更改它们。尝试他们的一些修复方法。如果您认为这是相同的,并且您可以重复该错误,我将请求重新打开该bug。

有一次,他们提到类型不匹配,workbench返回了错误的错误(应该是errno 150或errno 121)。你可以在这里看到这些错误的原因:MySQL Foreign Key Errors and Errno 150

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11029078

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档