您的位置:首页 > 运维架构 > 网站架构

网站系统---数据库的设计

2016-05-29 15:02 471 查看
 

 

 

                               网站系统---数据库的设计

 

 

前言:

      每一个完整或系统的的设计初衷,都是为了数据更好的管理和查询,数据库的设计也就是极其的显著和重要。下面是就以例子网上商城的数据库设计聊一聊数据库的设计了。

 

1 表与表之间视图:

                       

      


 

2 数据库设计:

  2.1用户表:

     * 用户ID

     * 用户名:

     * 密码:

     * 真实姓名:

     * 邮箱:

     * 地址:

    * 电话:

     * 用户状态:   0未激活  1已经激活

     * 激活码:

 

2.2 一级分类:

     * 一级分类ID

     * 一级分类名称

 

2.3 二级分类:

     * 二级分类ID:

    * 二级分类名称:

     * 一级分类ID(外键指向一级分类主键ID)

 

2.4 商品表:

     * 商品ID:

      * 商品名称:

     * 商品商城价格:

     * 商品市场价格:

     * 商品描述:

      * 商品图片:(路径)

     * 二级分类ID(外键指向二级分类主键ID)

 

2.5 订单表:

      * 订单ID

      * 订单时间:

     * 订单金额:

      * 订单状态:

     * 订单地址:

     * 订单电话:

     * 订单收货人:

    * 用户ID(外键指向用户表的主键ID)

 

2.6 订单项表:(需要参与到业务逻辑中)

      * 主键ID

      * 商品ID

     * 订单ID

      * 数量

     * 小计

 

2.7 后台用户表:

     * 用户名:

      * 密码:

 

 

 3  数据库设计注意:

     3.1  主键与外键

      一 般而言,一个实体不能既无主键又无外键。在E—R图中,处于叶子部位的实体,
可以定义主键,也可以不定义主
键(因为它无子孙),但必须要有外键(因为它有父亲)。主键与外键的设计,在全局数据库的设计中,占有重要地
位。当全局数据库的设计完成以后,有个美国数据库设计专家说:“键,到处都是键,除了键之外,什么也没有”,这
就是他的数据库设计经验之谈,也反映了他对信息系统核心(数据模型)的高度抽象思想。因为:主键是实体的高度
抽象,主键与外键的配对,表示实体之间的连接。

    

    3.2 完整性约束表现在三个方面

     
域的完整性
:用Check来实现约束,在数据库设计工具中,对字段的取值范围进行定义时,有一个Check按钮,通
过它定义字段的值城。
     
   
参照完整性
:用PK、FK、表级触发器来实现。
   
   用户定义完整性:它是一些业务规则,用存储过程和触发器来实现。


    3.3 基本表的性质

      基本表与中间表、临时表不同,因为它具有如下四个特性:
       o  原子性。基本表中的字段是不可再分解的。
       o  原始性。基本表中的记录是原始数据(基础数据)的记录。
       o  演绎性。由基本表与代码表中的数据,可以派生出所有的输出数据。
       o  稳定性。基本表的结构是相对稳定的,表中的记录是要长期保存的。

     理解基本表的性质后,在设计数据库时,就能将基本表与中间表、临时表区分开来。
 

    3.4 遵循三个范式

       理解三个范式,对于数据库设计大有好处。在数据库设计中,为了更好地应用三个范式,就必须通俗地理解三个范
式(通俗地理解是够用的理解,并不是最科学最准确的理解):
      
       o  第一范式:1NF是对属性的原子性约束,要求属性具有原子性,不可再分解;
      
       o  第二范式:2NF是对记录的惟一性约束,要求记录有惟一标识,即实体的惟一性;
      
       o  第三范式:3NF是对字段冗余性的约束,即任何字段不能由其他字段派生出来,它要求字段没有冗余。

   
  
    
   没有冗余的数据库设计可以做到。但是,没有冗余的数据库未必是最好的数据库,有时为了提高运行效率,就必

须降低范式标准,适当保留冗余数据。具体做法是:在概念数据模型设计时遵守第三范式,降低范式标准的工作放到

物理数据模型设计时考虑。降低范式就是增加字段,允许冗余。
 

                                                     


 

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: