zoukankan      html  css  js  c++  java
  • 常见级联树结构的数据表设计

      在程序设计中我们经常会遇到具有级联关系的多级树结构,本文给出了一些case的常见设计方案,包括分类管理、三级地址管理和多级菜单

    管理。

      Case中使用Oracle数据库做示例。

      从几个示例中可以看出,ID,NAME,PARENTID,PATH几个字段是通用的,其他字段根据需求扩展。其中PARENTID代表父节点ID,顶层父

    节点可设为-1;PATH存储从顶层到叶子层路径,可以用斜杠间隔;因为不同数据库处理null值的策略不同,顶层的PATH我们不设为null,可设

    为斜杠。

    级联分类管理:

    ID   NUMBER
    NAME   NVARCHAR2(255 CHAR)
    TYPE   NUMBER
    PARENTID   NUMBER
    PATH   NVARCHAR2(255 CHAR)

    三级级联地址:

    ID   NUMBER
    NAME   NVARCHAR2(255 CHAR)
    PARENT_ID   NUMBER
    ADMINISTRATIVE_LEVEL   NUMBER
    PATH   NVARCHAR2(255 CHAR)

    导航多级菜单:

    ID   NUMBER
    NAME   NVARCHAR2(255 CHAR)
    URL   NVARCHAR2(255 CHAR)
    PARENT   NUMBER
    SUB_SYS   NUMBER
    ICON   VARCHAR2(255 BYTE)
    PATH   NVARCHAR2(255 CHAR)

    Edit by Jimmy

    2014.09.17

     

  • 相关阅读:
    hashcode() equals()
    Java7/8 HashMap ConcurrentHashMap
    mysql联合索引
    spring 事务传播
    SpringMVC Controller 单例 多例
    Java进阶 线程安全
    JVM—JVM内存模型
    jvm中堆和栈的区别
    spring boot springmvc视图
    springcloud eureka.instance
  • 原文地址:https://www.cnblogs.com/jimmy-c/p/3976837.html
Copyright © 2011-2022 走看看