一张数据表(URLS)设计细节

来源:互联网 发布:电脑离线看书软件 编辑:程序博客网 时间:2024/05/17 22:25

数据表设计

     设计表示,应该综合考虑都对实现logic复杂性影响。

Table link(_id, title, url, visits…)  


需求

1>,table link 中不能有重复的url。

2>,当bookmark、preset访问过后,具有历史的属性,还要保留原来属性特点。

   

    设计

方案1>,增加字段type,type表示url所有类型,有history,bookmark, preset…,type取值分别为1,2,4,8….(2^n)各类型按位或就可以混合保留type类型所有属性,比如1代表history,2代表bookmark, 则1|2 = 3,即当type = 3时,我们就知道该条记录既是历史,又是书签。

方案2>  增加字段bookmark,preset…, 是书签 bookmark = 1, 是preset = 1,…,访问历史用visits > 0表示,每个类型都有一个字段与之对应。

 

        优缺点,方案一采用一个字段表示所有类型记录,字段数少,但每次曾删改查,都要有&和|的操作,增加logic复杂性,容易引入错误。

        方案二采用每种记录类型都有与之对应的一个字段,维护字段增多,但每次操作某一类型的数据时只关心与之相对应的字段,降低logic复杂性。

       

 

原创粉丝点击