lxm_yl
ascendlin
2011-10-27 10:54
采纳率: 0%
浏览 233
已采纳

关于mybaitis多对多的关系的一个疑问

有这样一个关系,user与post,多对多的关系,设计数据库的时候,我用一张中间表来表示,那么我在user表里面还应不应该在建立post的外键关系,或者建立与那张中间表的外键关系。看到项目的PDM上,中间表只是关联了post,但是却没有关联user,而user却是去关联中间表,在user里面有个中间表的外键,怎么看怎么不爽,这样的设计是不是有问题
如:
[code="java"]
create table user(
id,(主键)
username,
user_2_post_id (foreign key)-----关联中间表
)
[/code]
[code="java"]
create table post(
id,(主键)
name
)
[/code]
[code="java"]
create table user_2_post(
id,(主键)
user_id,(不是外键)
post_id(外键--关联post)
)
[/code]
请问这是个神马情况,还没见过这样设计的

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • DreamZhong
    DreamZhong 2011-10-27 12:17
    已采纳

    [url]http://dreamzhong.iteye.com/blog/1202133[/url]
    看看这篇博文,希望能对你有所帮助。我在处理这类关系时,一般不会在数据库层面去给表与表之间加上外键关联,而是在代码层面去做的关联,因为数据库层面的外键关联也就是约束而已,只要表中存在的数据是合理的就行了,就是说能表征关联关系就行。

    点赞 评论
  • DreamZhong
    DreamZhong 2011-10-27 11:37

    再看看你的持久化实体的定义吧

    点赞 评论
  • DreamZhong
    DreamZhong 2011-10-27 11:46

    [quote]按照这种关系下去,我就是不知道怎么去建实体类了[/quote]

    可否修改?

    点赞 评论

相关推荐