zoukankan      html  css  js  c++  java
  • 数据库设计 一对多 多对多 无限级菜单 设计方法

    设计规范

    1、每一个列保持一个原子性,字段不可再划分

    2、一个物体描述信息一个表存完

    3、每一个字段都是跟主键直接相关的,一条数据只存一次

    一对多 如下

    通过ID 进行关联

    多对多 如下

    通过中间表(映射表)进行关联

    无限级菜单

    name:菜单名称

    parentId:上级菜单的ID  也就是这个表里面的ID

    levelNum:菜单等级 方便查找

    code 和path配合 下级菜单的path 是上级菜单的path+caode 方面通过 ‘path%’进行查询属于该菜单下级的所有菜单

    order:排序

    关于自增主键用ID还是Guid的区别

    用int自增

    优点:不需要指定ID值、简单易用、省空间

    缺点:迁移数据麻烦,垮库麻烦

    用Guid

    优点:全球唯一

    缺点:如果用做Url中当参数,看起来不友好

    关于设置主外键

    优点:插入数据的时候,会有校验、更新删除数据的时候,会自动查找 删除相关信息

    缺点:多一步检测,耗时,数据导入麻烦

    建议:虚拟主外键,逻辑上有外键,不在数据库中体现

  • 相关阅读:
    读后感
    mysql分库分表的基本方法
    pdo接口用法
    视频技术基础
    【原创】shell易错语法汇总
    php底层的运行机制
    mysql统计函数
    etc/shadow 登陆口令破解
    JAVA学习(方法重载)
    JAVA学习(方法的定义及调用)
  • 原文地址:https://www.cnblogs.com/hunrry/p/9408444.html
Copyright © 2011-2022 走看看