新手仿站如何构建数据表
程序员文章站
2024-02-05 14:29:10
...
我们组实习前考试准备仿造本网站,现在的问题是在设计数据库时对建表的思路有些欠缺,跪求各路大神指点!!
回复内容:
我们组实习前考试准备仿造本网站,现在的问题是在设计数据库时对建表的思路有些欠缺,跪求各路大神指点!!
数据库建模:
画实体关系图,搞清楚实体之间的关系,是一对多,还是多对多的关系.比如:
一个问题对应多个回答,是一对多的关系,这时可以建一个问题跟回答的关系表.
一个回答对应多条评论,也是一对多的关系,这时可以建一个回答跟评论的关系表.
一个问题对应多个标签,一个标签对应多个问题,则是多对多的关系.
一篇文章对应多个分类,一个分类对应多篇文章,也是多对多的关系,所以可以建一个文章分类关系表
一个学生对应多门课程,一门课程对应多个学生,也是多对多的关系,所以可以建一个成绩表.
一件商品对应多位顾客,一位顾客对应多件商品,也是多对多的关系,所以可以建一个订单表.
有些情况下不需要单独建立关系表,比如,商品的一条评论里对应的多张图片(晒单),
可以在评论表设一个图片地址的字段,存放数组经过JSON编码或序列化后的字符串.
ER一画。关系搞清楚。一对多。还是多对多。然后根据ER模型把表构建出来就行呀。比较简单的直接写就可以以了。不用画图。
数据库设计必须搞清楚 实体和实体之间的关系 1对1 还是 1对多 还是 多对多 画图,找出关系后,实体的属性就是字段,比如学生表,学生ID 姓名name 年龄age 性别sex 就是字段