
1 BigDogWang OP 不要沉啊 |
2 Koral 2019 年 6 月 20 日 放一张表里,用 type 区分 |
3 172721404 2019 年 6 月 20 日 我觉得视屏和图片从数据库层面应该分成不同的表来存;接口返回的时候返回两个数组对象,一个是视屏 一个是图片 里面肯定会包含什么 名称啊 点赞啊 转发啊 评论啊 好多东西的 |
4 lastpass 2019 年 6 月 20 日 via Android 两个独立的对象。自然是两张表。 使用一个接口混合返回的业务要求放在业务层呀。 不要用数据库来实现。 |
5 BigDogWang OP @lastpass 好的,谢谢。受教了 |
6 wenzhoou 2019 年 6 月 20 日 via Android 有个伪需求,要找最后的 10 张视频或图片。分两张表的话那就是要找两次。 所以我想考虑到灵活性是分三张表,一张基础表放共通字段,一张照片特有字段,一张视频特有字段。 |
7 icris 2019 年 6 月 20 日 添加一个 post 表做列表内容,解决所有问题,顺便还能一对多 |
8 bruceczk 2019 年 6 月 20 日 建议一开始放一张表里面用 type 区分,等后期需求明确了再拆分也不迟,拆分总是比合并方便的。 |
9 xem 2019 年 6 月 20 日 可以放一个总表,用 type 区分,如果不同的字段不多,列就取一个合集, 如果不同的字段多,就分别为不同的 type 做一个详情表,这样,扩展和复用,效率等,比较均衡, 具体还是要看你的数据类型特点,和业务趋势 |
10 xh520630 2019 年 6 月 20 日 两个类型一样吧 ,都是 URL(一个图片地址一个视频地址)其他数据(都是描述之类的)都一样. type 区分一下就好了 |
11 annielong 2019 年 6 月 20 日 要么一个表加 type 区分,要么分三个表,一个主表,一个视频,一个图片, |
12 encro 2019 年 6 月 20 日 这么多人居然选择 2 张表,甚至 3 张表: 当然是 1 张表: media:id,type,name,url,size,width,height,created,updated |
13 fanqianger 2019 年 6 月 20 日 你看一下一本书,叫做 SQL ANI-PATTERN,里面对宽表用属性区分,和多表(类似于继承)都有分析。 |
15 johnniang 2019 年 6 月 20 日 via Android 其实它们都属于同一种类别,那就是媒体文件。所以这里建议用一张表。当然你可以考虑再添加一张表用于表示媒体的元信息。 |
16 poisedflw 2019 年 6 月 20 日 直接 JSON 岂不是爽歪歪。 |
17 leegoo 2019 年 6 月 20 日 我觉得你应该用两张表(两个单体对象)或者三张表(两个单体对象+两个对象的公共属性作为父类). 现在用一张表只是为了目前爽一下,但是你已经把两个表(对象)偶尔到一起了,重构的时候会比较麻烦 而且用 type 的话在后端(java) 每次都需要根据类型去判断岂不是多了很多无用的代码? |
18 tabris17 2019 年 6 月 20 日 media 表 | | 继承 | photo 表 video 表 |
20 justfindu 2019 年 6 月 20 日 你把它看作是附件, 不就没这个问题了么. |
22 yujieyu7 2019 年 6 月 20 日 “照片和视频想在同一个接口里混合返回”,这种业务下,已经在逻辑上把照片和视频归为同一类了,即个人作品。所以建议一张表,不然以后如果增加分页、筛选、排序等需求的时候就很难维护了。 |
23 wuzhizhan 2019 年 6 月 20 日 via iPhone 两张表分页麻烦。要么一张表,要么三张表 |
24 yufeng0681 2019 年 6 月 20 日 列表查看图片和视频,建议放一个表里面。 页面上展示的时候其实大多是缩略图或者 gif 动图,不会直接用到视频源的 具体视频可能因为多个分辨率版本,还要单独弄详情表(视频媒体表) |
25 limuyan44 2019 年 6 月 21 日 都是 src type 没必要分,没必要搞得那么麻烦,一张表简单许多又不是什么复杂的项目,个人项目哪会有那么多奇奇怪怪的需求。 |
26 CasualYours 2019 年 6 月 21 日 个人项目建议还是怎么简单怎么来,另外,我也喜欢摄影,希望楼主网站做好后分享一下。 |
27 fmumu 2019 年 6 月 21 日 via Android mongodb 试试,mysql 可以三张表啊 |
28 BigDogWang OP 好多回复,其实不仅仅是做个人项目,还想通过个人项目来锻炼自己的能力,所以想要求自己更多一点。 半路出家,没有系统学过数据库。吸收了大家的建议,我决定先试试三张表#狗头 |
29 tedchen 2019 年 6 月 21 日 用 nosql |