【问题标题】:foreign key setup is mysql table外键设置是mysql表
【发布时间】:2013-02-10 12:48:33
【问题描述】:

我认为外键对我来说并不重要,但现在我认为我必须采用。我有 20 多个表,其中包含为博客网站服务的多对多关系。

表:网关(post_id、group_id、post_type、post_date ...)

表:post(post_id、group_id、title、body ...)

表:投票(post_id、group_id、title、...)

和类似的表格:视频、照片、链接表格;然后他们有表:跟踪喜欢/不喜欢的记录和用户评论记录——它们都有一个共同的字段post_id var(14)

在这一点上,我认为用外键引用它们会更好。在这个例子中,我有 8 个表可以与 post_id 链接,所以当我尝试其他表来引用时,我现在尝试在 post 和 gateway [on delete: cascade,on update: no action(InnoDB)] 之间进行 FK。 FK 到网关或发布它会引发错误,我不知道为什么?肯定是我哪里错了。

如果我的方法正确或有更好的方法,请帮助我?

这是我收到的错误消息:

【问题讨论】:

  • 你能发布你得到的错误吗?当您在它发布表结构和一些示例时。顺便提一句。外键的一个常见错误是您在表中使用了不同的字段类型。
  • 我看了你以前的帖子。在我们继续之前;这次你会提供反馈/接受答案和/或投票吗?
  • 如果我可以在评论中发布一个外部喜欢 - [eborok.com/error.jpg] 我还要补充一点是 post_id 在这些表格中预先固定有一个字母和 upderscore(例如 p_post_id)有问题吗?
  • 很抱歉 Radical 先生没有反馈/接受答案和/或投票。因为当我点击它时说你投票需要 15 声望——然后我做什么壳:-( ??
  • 这不仅仅是我的答案。 stackoverflow.com/questions/14682448/…您在评论中明确声明您的问题已解决,但您不接受。

标签: mysql foreign-keys


【解决方案1】:

尝试将外键设置为索引,并确保使用正确的名称并使用相同的列类型。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-10-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多