为了账号安全,请及时绑定邮箱和手机立即绑定

mysql多表关系

mysql多表关系

惊艳消逝 2017-09-20 23:34:18
建立一个用户可以注册登录,发表名言美句感想的,可以收藏别人发表或者名著数的名人名句的,用户可以评论别人发表的或收藏的句子 的网站,主要有六张基础表,但是表的外键,不知道怎么建立这些关系,以下是表的字段(大概)用户表:  user_id(id)    user_name(用户名) user_pass(用户密码) user_time(注册时间)书表:     book_id(书序号)   book_name(书名)     book_author(作者)    book_type(类型)               book_publitime(出版时间)   book_createtime(书的创作时间)句子表: juzi_id(句子id)         juzi_content(内容)        juzi_from(句子来源:1用户原创,2.名人名著)                  juzi_lable(句子的代表标签:如励志、青春)作者表: author_id(作者id)  author_name(作者名字,笔名)      author_content(作者详情)                author_birthday(作者出生日)  author_sex(作者性别)     author_country(国籍)评论表: discuss_id(评论id)   discuss_content(评论内容)       discuss_time(评论时间)    juzi_id(评价的句子)用户收藏表:user_id(用户id)   jizi_id(收藏句子的id)   usercoll_time(收藏时间) 这写表的关系我清楚,但是这些表的主键和外键如何设置啊,求大神 解答?
查看完整描述

1 回答

?
代欣雨

TA贡献1条经验 获得超0个赞

如果你的表已经建立好了,你只需要在数据中按照语法如下,去添加的你的外键就可以了

alter table  修改的表名  add constraint 外键名  foreign key (本表字段) references 被依赖的表名(被依赖的表中的字段名)

汉字全是变量,我下面写一个列子:书表和作者的关系,鼠标中的作者(book_author)应该依赖作者表中的主键(author_id)这个字段。也就是 书表中的  book_author 应该存 作者表中的 author_id 的值

应该为 alter table 书表  add constraint  author_id_fk foreign key(book_author) references 作者表(author_id);



查看完整回答
反对 回复 2017-09-21
  • 惊艳消逝
    惊艳消逝
    谢谢你的回答,表是建好了,就是表的关系,外健这些没有写好,作者表与书的关系,我清楚了,关键是那个句子表的关系,句子的来源(juzi_from)可以是注册用户发表的句子,也可以是那些作者或者是书中的经典名言(但是书表中的没有与之相关的字段,所以问题在这里?),每一个句子(juzi_id)是唯一的,用户发表已经存在的句子,默认用户收藏(所以有一个收藏表)改句子,任何用户可以对句子进行评论(所以有一个评论表) 主要问题是三表关系,作者表 书表 与句子表 一个作者可以有很多著作书,书只有一个作者(默认),每一本书可以有很多名句,但每一个句子只能来源一本书或者用户发表的句子,这关系表不知道怎么建了,感觉书表少了什么字段啊,求大神再解答解答?
  • 1 回答
  • 0 关注
  • 1031 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信