mysql关联表怎么命名啊?求教 ,感觉数据库命名太乱了

快乐的兔八哥 2018-07-18 12:24:49
现在有个a1_cat表 和 a1表 有个第三个表 把 a1 和 a1关联起来 采用 a1_cat_a1 现在命名自己的项目都搞得晕晕乎乎的 ,不知道各位在项目中是怎么命名的啊。
求指点,我自己想改成relevance_a1_cat_a1 (relevance 有相关性的意思),这样的话感觉下划线又太多了,咋办数据库多了后就晕了,除非a1_cat 改成a1cat 这样的话就成了relevance_a1cat_a1 好歹的也简洁啊。

...全文
2895 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
卖水果的net 2018-07-19
  • 打赏
  • 举报
回复 1
两个实体
如果是主子表关系, 可以取成 a_main 和 a_detail 形式。 detail 表中存 main 的id .
如果是两个独立的实体,可以 取名 a1 和b1, 关系表取名为 a1_re_a2 。

文盲老顾 2018-07-19
  • 打赏
  • 举报
回复
a1
a1_cat // cat 基本为一个特定类型,没有歧义
bind_a1_cat // 绑定主表类型表
快乐的兔八哥 2018-07-19
  • 打赏
  • 举报
回复
引用 5 楼 sinat_28984567 的回复:
[quote=引用 4 楼 weixin_42114689 的回复:]
[quote=引用 1 楼 sinat_28984567 的回复:]
这两个表的对应关系是什么样的?如果不是多对多,就不加第三个表,把关联外键直接存储到表中。


你好,感谢你的方法,我现在做到了一对一或1对多都是用的关联外键直接存储到表中了,现在项目的多对多关系的,我还想请问下 需要中间表也把关联外键直接存储到表中吗?[/quote]
如果是多对多就存储到中间表中[/quote]



用户表user
id name

文章分类表article_cat

id pid tiele


文章表article

id cid title content eidt(最后一个被谁编辑的字段)
FOREIGN KEY(cid) REFERENCES article_cat(id),


文章被谁编辑过 中间表
id article_id user_id
1 1 1
2 2 2

如:这样的一个中间表,进行把文章和用户进行关联 还要不要:
FOREIGN KEY(article_id) REFERENCES article(id),
FOREIGN KEY(user_id) REFERENCES user(id),
进行外键的关联,我想的是 这样的话关联下可以使用事务,比自己去写逻辑去判断要好。
二月十六 2018-07-19
  • 打赏
  • 举报
回复
引用 4 楼 weixin_42114689 的回复:
[quote=引用 1 楼 sinat_28984567 的回复:]
这两个表的对应关系是什么样的?如果不是多对多,就不加第三个表,把关联外键直接存储到表中。


你好,感谢你的方法,我现在做到了一对一或1对多都是用的关联外键直接存储到表中了,现在项目的多对多关系的,我还想请问下 需要中间表也把关联外键直接存储到表中吗?[/quote]
如果是多对多就存储到中间表中
快乐的兔八哥 2018-07-19
  • 打赏
  • 举报
回复
引用 1 楼 sinat_28984567 的回复:
这两个表的对应关系是什么样的?如果不是多对多,就不加第三个表,把关联外键直接存储到表中。


你好,感谢你的方法,我现在做到了一对一或1对多都是用的关联外键直接存储到表中了,现在项目的多对多关系的,我还想请问下 需要中间表也把关联外键直接存储到表中吗?
吉普赛的歌 2018-07-18
  • 打赏
  • 举报
回复
a1_cat_data
a1_data
a1_cat_A1_mid
二月十六 2018-07-18
  • 打赏
  • 举报
回复
这两个表的对应关系是什么样的?如果不是多对多,就不加第三个表,把关联外键直接存储到表中。

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧