关于字典表数据级联关系的说明
2014-09-19 18:19
387 查看
因为之前在设计tbl_dictionary_info(字典表)时,只设计了两级关系,用来表示一个大类底下的有多少个小的分类。
ID | TYPE_NAME | TYPE_CODE | ITEM_NAME | ITEM_CODE | SORT_NO | .......
(项的主键) 一级类名 一级编码 二级(项)类名 二级(项)编码 项的序号
106 广告位类型 AD_TYPE 固定 FIXED 1
107 广告位类型 AD_TYPE 漂浮 FLOAT 2
108 广告位类型 AD_TYPE 弹窗 POPUP 3
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
但是现在公司提供过来的数据分为了好几个层级,这样在存入字典表的时候需要提现其层级关系。
数据如图:
关于这样的表格类别名称的说明:
1.分三个层级:
大类用A开头,中类用B开头,小类用C开头。
2.命名:
A01下面中类从B01,B02,B03...开始,A02下面的中类也从B01,B02,B03...开始,A03下面的中类也从B01,B02,B03...开始。
.以此类推,也就是说每一个大类下的中类都是从B01,B02,B03...开始。
同理;
每一个中类下的小类都是从C01,C02,C03...开始的。
像这样的大于二个层级关系的可以这样设计设计字典表格。
ID | TYPE_NAME | TYPE_CODE | ITEM_NAME | ITEM_CODE |
大类名称 大类编码 中类名称 中类编码
-----------------------------------------------------------------------------------------------------------------------------
ID | TYPE_NAME | TYPE_CODE | ITEM_NAME | ITEM_CODE |
中类名称 中类编码 小类名称 小类编码
-----------------------------------------------------------------------------------------------------------------------------
总结一下,也就是说,type_***** 存放的是 item_***** 的上一级的类别名称和类别代码。
然后为了能更高效的查询到这个类别的上一级类别,比如想知道 “财经资讯”,这个中类属于哪个大类,就在字典表中多添加了一个属性PARENT_ID(父级ID),这样利用HIbernate的根据属性ID就能查找出相应的对象的特性,就能跟方便的知道上一级别的对象了。
ID | TYPE_NAME | TYPE_CODE | ITEM_NAME | ITEM_CODE | PARENT_ID
本级ID 父级名称 父级编码 本级名称 本级编码 父级ID
-----------------------------------------------------------------------------------------------------------------------------------------------------------
举例:
查询 “内容主题分类标准” --》 "金融理财" --》 “股票” --》 “美国股票”
如图:
先查找小类的记录。
其中:ID,ITEM_CODE,ITEM_NAME,记录的都是本记录的信息
PARENT_ID,TYPE_NAME,TYPE_CODE,记录的都是父级记录的信息
然后通过该条记录的 PARENT_ID 可以查找到其父级记录。可以看见中类的记录信息。
然后在根据中类的 PARENT_ID 就可以查找到 大类记录的信息。
然后在根据中类的 PARENT_ID 就可以查找到 大类记录的信息。
ID | TYPE_NAME | TYPE_CODE | ITEM_NAME | ITEM_CODE | SORT_NO | .......
(项的主键) 一级类名 一级编码 二级(项)类名 二级(项)编码 项的序号
106 广告位类型 AD_TYPE 固定 FIXED 1
107 广告位类型 AD_TYPE 漂浮 FLOAT 2
108 广告位类型 AD_TYPE 弹窗 POPUP 3
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
但是现在公司提供过来的数据分为了好几个层级,这样在存入字典表的时候需要提现其层级关系。
数据如图:
关于这样的表格类别名称的说明:
1.分三个层级:
大类用A开头,中类用B开头,小类用C开头。
2.命名:
A01下面中类从B01,B02,B03...开始,A02下面的中类也从B01,B02,B03...开始,A03下面的中类也从B01,B02,B03...开始。
.以此类推,也就是说每一个大类下的中类都是从B01,B02,B03...开始。
同理;
每一个中类下的小类都是从C01,C02,C03...开始的。
像这样的大于二个层级关系的可以这样设计设计字典表格。
ID | TYPE_NAME | TYPE_CODE | ITEM_NAME | ITEM_CODE |
大类名称 大类编码 中类名称 中类编码
-----------------------------------------------------------------------------------------------------------------------------
ID | TYPE_NAME | TYPE_CODE | ITEM_NAME | ITEM_CODE |
中类名称 中类编码 小类名称 小类编码
-----------------------------------------------------------------------------------------------------------------------------
总结一下,也就是说,type_***** 存放的是 item_***** 的上一级的类别名称和类别代码。
然后为了能更高效的查询到这个类别的上一级类别,比如想知道 “财经资讯”,这个中类属于哪个大类,就在字典表中多添加了一个属性PARENT_ID(父级ID),这样利用HIbernate的根据属性ID就能查找出相应的对象的特性,就能跟方便的知道上一级别的对象了。
ID | TYPE_NAME | TYPE_CODE | ITEM_NAME | ITEM_CODE | PARENT_ID
本级ID 父级名称 父级编码 本级名称 本级编码 父级ID
-----------------------------------------------------------------------------------------------------------------------------------------------------------
举例:
查询 “内容主题分类标准” --》 "金融理财" --》 “股票” --》 “美国股票”
如图:
先查找小类的记录。
其中:ID,ITEM_CODE,ITEM_NAME,记录的都是本记录的信息
PARENT_ID,TYPE_NAME,TYPE_CODE,记录的都是父级记录的信息
然后通过该条记录的 PARENT_ID 可以查找到其父级记录。可以看见中类的记录信息。
然后在根据中类的 PARENT_ID 就可以查找到 大类记录的信息。
然后在根据中类的 PARENT_ID 就可以查找到 大类记录的信息。
相关文章推荐
- Hibernate 级联关系说明 - 关于cascade和inverse的用法
- Hibernate 级联关系说明 - 关于cascade和inverse的用法
- Hibernate 级联关系说明 - 关于cascade和inverse的用法
- 关于脏字典过滤问题-用正则表达式来过滤脏数据
- 关于对孟子E章《利用Repeater控件显示主-从关系数据表》的一点补充(转)
- 关于数据字典的常用SQL文
- [导入]关于孟子E章《利用Repeater控件显示主-从关系数据表》的一点补充
- 关于format函数及数据类型的常用替换说明
- sd--关于定价技术的表关系和定价过程配置确定的说明
- sd--关于定价技术的表关系和定价过程配置确定的说明
- 关于SQL92标准和Sybase,SQLServer2000,Oracle的数据类型对比关系
- oracle数据字典简介说明
- 关于ISO2709数据的格式说明
- 关于java基本数据类型和包装类的关系
- sd--关于定价技术的表关系和定价过程配置确定的说明
- 关于几何关系的代码说明
- 关于脏字典过滤问题-用正则表达式来过滤脏数据
- 关于gridView格式化数据的说明 DataFormatString
- 转:关于脏字典过滤问题-用正则表达式来过滤脏数据
- MapInfo数据字典、文件结构说明