CN101645085B - 不规则字段存储方法和*** - Google Patents

不规则字段存储方法和*** Download PDF

Info

Publication number
CN101645085B
CN101645085B CN200910090657A CN200910090657A CN101645085B CN 101645085 B CN101645085 B CN 101645085B CN 200910090657 A CN200910090657 A CN 200910090657A CN 200910090657 A CN200910090657 A CN 200910090657A CN 101645085 B CN101645085 B CN 101645085B
Authority
CN
China
Prior art keywords
field
classification
data
main body
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN200910090657A
Other languages
English (en)
Other versions
CN101645085A (zh
Inventor
杜树峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yonyou Network Technology Co Ltd
Original Assignee
Beijing Wecoo Electronic Business Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Wecoo Electronic Business Technology Co Ltd filed Critical Beijing Wecoo Electronic Business Technology Co Ltd
Priority to CN200910090657A priority Critical patent/CN101645085B/zh
Publication of CN101645085A publication Critical patent/CN101645085A/zh
Application granted granted Critical
Publication of CN101645085B publication Critical patent/CN101645085B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了不规则字段存储方法,包括:建立主体表,将分类相同的基本字段存储在所述主体表中,其中,所述主体表还存储有分类类型字段和分类数据存储字段,所述分类数据存储字段用于存储这自有字段信息;建立分类表,将分类信息存储在所述分类表中,所述分类表还存储有自有字段信息在主体表中分类数据存储字段中的顺序;建立属性表,将全部分类的所有的自有字段的属性存储在所述属性表中。既避免了使用一个超级大表存储数据带来的大量冗余数据问题,又不会产生许多的表,就因此避免了许多零碎的表结构带来的维护开销。

Description

不规则字段存储方法和***
技术领域
本发明涉及数据库技术,更具体地涉及不规则字段存储方法和***。
背景技术
在现有的数据结构中,有一种不规则数据结构如下:该数据结构的大部分基本字段都是相同的,但是在其不同的分类之间还是有一些有区别的自有字段。同样是商铺的数据,他们都具有名称、地址、联系电话等共有的信息字段。然而,不同的行业和类别之间又存在着各自有区别的信息字段,像是餐饮行业里有包间数量,特色菜品;车辆运输的时候,每辆车都有其能够承载的吨位的限制等等。再有就是这些自有字段有不确定性,因为每个行业都会有它新增的自有字段,例如在以前付钱的时候都是使用现金,而在现在人们都是用***,所以就会增加是否支持***消费字段。
现有的数据库设计在存储这种不规则的数据的时候,一般有两种方式:一种方式是使用一个超级大的表,这个表中要包含所有的共有字段和自有字段,这种方式完成了功能需求但是却记录了大量冗余的无效数据;一种是对应数据的相同部分要一个表,每一个不同分类的自有字段再对应一个反映其特殊结构的表。那么在这种情况下,在数据库表中就要有大量的表来描述不同分类对应的自有字段。就因此造成了庞大的表格数量,在需要增改自有字段的情况下引起了不小的维护开销,而且在搜索数据的时候也会带来很大的查询开销。
解决存储不规则数据造成的大量数据冗余和表结构所带来的巨大的维护开销,就需要新型的不规则字段存储方法和***。
发明内容
为了解决上述问题之一,本发明提供了不规则字段存储方法,包括:建立主体表,将分类相同的基本字段存储在所述主体表中,其中,所述主体表还存储有分类类型字段和分类数据存储字段,所述分类数据存储字段用于存储自有字段信息;建立分类表,将分类信息存储在所述分类表中,所述分类表还存储有自有字段信息在主体表中分类数据存储字段中的顺序;建立属性表,将全部分类的所有的自有字段的属性存储在所述属性表中。
所述分类信息实际上是指这个分类都存储有哪些自有字段以及这些自有字段所处的位置的对映关系。举例说明:如果分类号是10000的信息内容为“1|2|3”,那么就是意味着主体表中存储的实际数据为“1自有数据字段的内容\02自有字段的内容\03自有字段的内容(其中\0是隐藏的分割符)”。
所述属性表记录的是所有自有字段的id(既编号)和该编号对应字段的名称以及其他有关该自有字段的属性。在分类表中的分类信息中保存的“1|2|3”中的数字1、2、3就是属性表中的自有字段id编号。
在上述方法中,优选地,使用不可见的控制字符隔例如:“\0”将每个自有字段信息断开。
在上述方法中,优选地,进一步包括:使用文本建立每个自有字段和数据库中的数据之间的镜像关系,在更新所述自有字段时,更新所述镜像关系,并记录经过修改的所述自有字段的唯一标识符。每一个自有字段要对应一个文本文件;该文本文件要记录的内容包括本条数据记录在数据库中的唯一的标识,本数据属于的分类号和这条数据保存的自有字段的内容(如果该数据保存的该自有字段的内容为空的话则不出现这条记录)。
在上述方法中,优选地,进一步包括:通过数据库脚本进行数据库数据的更新。
在上述方法中,优选地,通过修改脚本进行数据库数据的更新具体为:使用线下的文本,修改所述不规则字段,生成批次更新的数据库脚本,执行所述批次更新的数据库脚本完成数据库数据的更新。
数据库脚本的生成方法如下:将做过修改的数据的唯一标识在分类所对应的自有字段文件里遍历,将该数据按照分类表描述格式,将所有自有字段组合成一条数据库的更新语句。最后把所有中数据的更新语句写进文本形成数据的更新脚本。数据更新自有字段的时候,实际修改的是文本镜像记录的内容,并且把做过修改的数据的唯一标识记录下来备用。
本发明还提供了一种不规则字段存储***,包括:主体表建立装置,用于建立主体表,将分类相同的基本字段存储在所述主体表中,其中,所述主体表还存储有分类类型字段和分类数据存储字段,所述分类数据存储字段用于存储这一分类的所有的自有字段信息;分类表建立装置,用于建立分类表,将分类信息存储在所述分类表中,所述分类表还存储有这一分类的自有字段在主体表中分类数据存储字段中的顺序;属性表建立装置,用于建立属性表,将全部分类的所有的自有字段的属性存储在所述属性表中。
所述分类信息实际上是指这个分类都存储有哪些自有字段以及这些自有字段所处的位置的对映关系。举例说明:如果分类号是10000的信息内容为“1|2|3”,那么就是意味着主体表中存储的实际数据为“1自有数据字段的内容\02自有字段的内容\03自有字段的内容(其中\0是隐藏的分割符)”。
所述属性表记录的是所有自有字段的id(既编号)和该编号对应字段的名称以及其他有关该自有字段的属性。在分类表中的分类信息中保存的“1|2|3”中的数字1、2、3就是属性表中的自有字段id编号。
在上述***中,优选地,使用不可见的控制字符隔将每个自有字段信息断开。
在上述***中,优选地,进一步包括镜像关系建立装置,用于使用文本建立每个自有字段和数据库中的数据之间的镜像关系,在更新所述自有字段时,更新所述镜像关系,并记录经过修改的所述自有字段的唯一标识符。
在上述***中,优选地,进一步包括更新装置,用于通过数据库脚本进行数据库数据的更新。
在上述***中,优选地,所述更新装置使用线下的文本,修改所述不规则字段,生成批次更新的数据库脚本,执行所述批次更新的数据库脚本完成数据库数据的更新。
通过上述技术方案,既避免了使用一个超级大表存储数据带来的大量冗余数据问题,又不会产生许多的表,就因此避免了许多零碎的表结构带来的维护开销。
附图说明
图1示出了根据本发明的不规则字段存储方法的流程图;以及
图2示出了根据本发明的不规则字段存储***的框图。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1示出了根据本发明的不规则字段存储方法的流程图。
该方法包括:步骤102,建立主体表,将分类相同的基本字段存储在所述主体表中,其中,所述主体表还存储有分类类型字段和分类数据存储字段,所述分类数据存储字段用于存储自有字段信息;步骤104,建立分类表,将分类信息存储在所述分类表中,所述分类表还存储有自有字段信息在主体表中分类数据存储字段中的顺序;步骤106,建立属性表,将全部分类的所有的自有字段的属性存储在所述属性表中。
所述分类信息实际上是指这个分类都存储有哪些自有字段以及这些自有字段所处的位置的对映关系。举例说明:如果分类号是10000的信息内容为“1|2|3”,那么就是意味着主体表中存储的实际数据为“1自有数据字段的内容\02自有字段的内容\03自有字段的内容(其中\0是隐藏的分割符)”。
所述属性表记录的是所有自有字段的id(既编号)和该编号对应字段的名称以及其他有关该自有字段的属性。在分类表中的分类信息中保存的“1|2|3”中的数字1、2、3就是属性表中的自有字段id编号。
在上述方法中,优选地,使用不可见的控制字符隔将每个自有字段信息断开。
在上述方法中,优选地,进一步包括:使用文本建立每个自有字段和数据库中的数据之间的镜像关系,在更新所述自有字段时,更新所述镜像关系,并记录经过修改的所述自有字段的唯一标识符。每一个自有字段要对应一个文本文件;该文本文件要记录的内容包括本条数据记录在数据库中的唯一的标识,本数据属于的分类号和这条数据保存的自有字段的内容(如果该数据保存的该自有字段的内容为空的话则不出现这条记录)。
在上述方法中,优选地,进一步包括:通过数据库脚本进行数据库数据的更新。
在上述方法中,优选地,通过修改脚本进行数据库数据的更新具体为:使用线下的文本,修改所述不规则字段,生成批次更新的数据库脚本,执行所述批次更新的数据库脚本完成数据库数据的更新。
数据库脚本的生成方法如下:将做过修改的数据的唯一标识在分类所对应的自有字段文件里遍历,将该数据按照分类表描述格式,将所有自有字段组合成一条数据库的更新语句。最后把所有中数据的更新语句写进文本形成数据的更新脚本。数据更新自有字段的时候,实际修改的是文本镜像记录的内容,并且把做过修改的数据的唯一标识记录下来备用。
下面通过一个实例来说明上述方法。
将各个分类相同的基本字段集中在一个主体表中,在这个主体表中另外要加入分类类型字段和分类数据存储字段。分类数据存储字段中要记录这个分类的所有的自有字段的信息,在每个自有字段信息之间用不可见的控制字符隔“\0”断开。如表1所示。
  商家id   分类id   基本字段   自有字段
  100元\0支持使用***\0有包间\07:00-18:00
  ……
表1
数据的分类信息要配合有一张分类表(参见表2),这个表除了要记录本分类的信息以外,还要记录该分类的自有字段在主体表中分类数据存储字段里面的顺序。
  分类id   分类名称   自有字段顺序
  1|2|6|15
  2|3|4
  ……
表2
另外还需要一张属性表(参见表3)来记录全部分类的所有的自有字段,在分类表里面记录自有字段顺序的时候就可以使用该表的ID号。
  自有字段id   自有字段名称
  1   人均消费额
  2   是否支持使用***
  ……   ……
  6   是否有包间
  ……   ……
  15   营业时间
表3
在数据库以外,需要使用文本把各个自有字段的数据做一个镜像记录,这个记录(参见表4)里面要保存有这个自有字段对应信息的关键字段可以让它与数据库中的数据联系起来。
  商家id   分类id   自有字段数据内容
  100元
  72元
  ……
表4
平时前台数据展示的时候,通过数据库的各个表的关系可以将分类数据存储字段中的数据拆分成需要的格式显示在前台页面。针对自有字段做修改的时候只需要在属性表里添改查相应的自有字段,然后修改分类表的数据就可以完成了整个数据模型的修改。在更新数据的时候就可以使用线下的文本,将要处理的数据处理和修改好,最后将修改后的数据重新合并好形成一个批次更新的数据库脚本,执行该脚本以后就完成了数据库数据的更新。
图2示出了根据本发明的不规则字段存储***的框图。
该不规则字段存储***200包括:主体表建立装置202,用于建立主体表,将分类相同的基本字段存储在所述主体表中,其中,所述主体表还存储有分类类型字段和分类数据存储字段,所述分类数据存储字段用于存储自有字段信息;分类表建立装置204,用于建立分类表,将分类信息存储在所述分类表中,所述分类表还存储有自有字段信息在主体表中分类数据存储字段中的顺序;属性表建立装置206,用于建立属性表,将全部分类的所有的自有字段的属性存储在所述属性表中。
所述分类信息实际上是指这个分类都存储有哪些自有字段以及这些自有字段所处的位置的对映关系。举例说明:如果分类号是10000的信息内容为“1|2|3”,那么就是意味着主体表中存储的实际数据为“1自有数据字段的内容\02自有字段的内容\03自有字段的内容(其中\0是隐藏的分割符)”。
所述属性表记录的是所有自有字段的id(既编号)和该编号对应字段的名称以及其他有关该自有字段的属性。在分类表中的分类信息中保存的“1|2|3”中的数字1、2、3就是属性表中的自有字段id编号。
在上述***中,优选地,使用不可见的控制字符隔将每个自有字段信息断开。
在上述***中,优选地,进一步包括镜像关系建立装置208,用于使用文本建立每个自有字段和数据库中的数据之间的镜像关系。每一个自有字段要对应一个文本文件;该文本文件要记录的内容包括本条数据记录在数据库中的唯一的标识,本数据属于的分类号和这条数据保存的自有字段的内容(如果该数据保存的该自有字段的内容为空的话则不出现这条记录)。
在上述***中,优选地,进一步包括更新装置210,用于通过数据库脚本进行数据库数据的更新。
在上述***中,优选地,所述更新装置使用线下的文本,修改所述不规则字段,生成批次更新的数据库脚本,执行所述批次更新的数据库脚本完成数据库数据的更新。
数据库脚本的生成方法如下:将做过修改的数据的唯一标识在分类所对应的自有字段文件里遍历,将该数据按照分类表描述格式,将所有自有字段组合成一条数据库的更新语句。最后把所有中数据的更新语句写进文本形成数据的更新脚本。数据更新自有字段的时候,实际修改的是文本镜像记录的内容,并且把做过修改的数据的唯一标识记录下来备用。
通过上述技术方案,既避免了使用一个超级大表存储数据带来的大量冗余数据问题,又不会产生许多的表,就因此避免了许多零碎的表结构带来的维护开销。
有某***,同时拥有餐饮、超市、旅游景点和政府机关等多个分类。公共字段有:名称、地址、联系电话分类号;餐饮分类的自有字段有特色菜和人均消费额,超市的自有字段有营业时间、货品数量和停车位数,旅游景点有门票价格和停车位数,政府机关有办公时间,等等。
使用根据本发明的技术方案,将不论***中使用多少个分类,我们只需要使用3个表就能描述全部的数据格式。在查询数据的时候,只需要查询主体表就能得到相应的全部数据内容而且没有冗余数据,在新增是否支持***字段的时候,只需要更新数据库里面的数据,而原有的表的结构并不需要修改。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种不规则字段存储方法,其特征在于,包括:
建立主体表,将各分类中相同的基本字段存储在所述主体表中,其中,所述主体表还存储有分类类型字段和分类数据存储字段,所述分类类型字段用于存储各分类的标识,所述分类数据存储字段用于存储各分类中的多个自有字段信息;
建立分类表,将各分类的分类信息存储在所述分类表中,所述分类表还存储有所述自有字段信息在主体表中分类数据存储字段中的顺序;
建立属性表,将全部分类的所有的自有字段的属性存储在所述属性表中。
2.根据权利要求1所述的不规则字段存储方法,其特征在于,使用不可见的控制字符将每个自有字段信息断开。
3.根据权利要求1或2所述的不规则字段存储方法,其特征在于,进一步包括:使用文本保存每个自有字段在数据库中的数据的镜像记录,在更新所述自有字段信息时,更新所述镜像记录,并记录经过修改的所述自有字段的唯一标识符。
4.根据权利要求1或2所述的不规则字段存储方法,其特征在于,进一步包括:通过数据库脚本进行数据库数据的更新。
5.一种不规则字段存储***,其特征在于,包括:
主体表建立装置,用于建立主体表,将各分类中相同的基本字段存储在所述主体表中,其中,所述主体表还存储有分类类型字段和分类数据存储字段,所述分类类型字段用于存储各分类的标识,所述分类数据存储字段用于存储各分类中的多个自有字段信息;
分类表建立装置,用于建立分类表,将各分类的分类信息存储在所述分类表中,所述分类表还存储有所述自有字段信息在主体表中分类数据存储字段中的顺序;
属性表建立装置,用于建立属性表,将全部分类的所有的自有字段的属性存储在所述属性表中。
6.根据权利要求5所述的不规则字段存储***,其特征在于,使用不可见的控制字符将每个自有字段信息断开。
7.根据权利要求5或6所述的不规则字段存储***,其特征在于,进一步包括镜像记录保存装置,用于使用文本保存每个自有字段在数据库中的数据的镜像记录,在更新所述自有字段信息时,更新所述镜像记录,并记录经过修改的所述自有字段的唯一标识符。
8.根据权利要求5或6所述的不规则字段存储***,其特征在于,进一步包括更新装置,用于通过数据库脚本进行数据库数据的更新。
CN200910090657A 2009-09-03 2009-09-03 不规则字段存储方法和*** Expired - Fee Related CN101645085B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200910090657A CN101645085B (zh) 2009-09-03 2009-09-03 不规则字段存储方法和***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200910090657A CN101645085B (zh) 2009-09-03 2009-09-03 不规则字段存储方法和***

Publications (2)

Publication Number Publication Date
CN101645085A CN101645085A (zh) 2010-02-10
CN101645085B true CN101645085B (zh) 2012-09-12

Family

ID=41656973

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200910090657A Expired - Fee Related CN101645085B (zh) 2009-09-03 2009-09-03 不规则字段存储方法和***

Country Status (1)

Country Link
CN (1) CN101645085B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102523580A (zh) * 2011-11-25 2012-06-27 北京握奇数据***有限公司 一种m2m业务终端数据处理方法、m2m业务卡和m2m终端数据处理卡
CN103049567A (zh) * 2012-12-31 2013-04-17 威盛电子股份有限公司 检索方法、检索***以及自然语言理解***
CN106547786A (zh) * 2015-09-22 2017-03-29 阿里巴巴集团控股有限公司 一种数据存储方法及装置
CN111177179B (zh) * 2019-12-06 2023-11-10 北京懿医云科技有限公司 一种信息记录方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6061690A (en) * 1997-10-31 2000-05-09 Oracle Corporation Apparatus and method for storage of object collections in a database system
CN1270363A (zh) * 1999-04-09 2000-10-18 英业达股份有限公司 数据库的管理方法
CN101464885A (zh) * 2008-12-31 2009-06-24 金蝶软件(中国)有限公司 一种展现产品属性信息的方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6061690A (en) * 1997-10-31 2000-05-09 Oracle Corporation Apparatus and method for storage of object collections in a database system
CN1270363A (zh) * 1999-04-09 2000-10-18 英业达股份有限公司 数据库的管理方法
CN101464885A (zh) * 2008-12-31 2009-06-24 金蝶软件(中国)有限公司 一种展现产品属性信息的方法及装置

Also Published As

Publication number Publication date
CN101645085A (zh) 2010-02-10

Similar Documents

Publication Publication Date Title
Cohen A consumers' republic: The politics of mass consumption in postwar America
CN105843844B (zh) 相对于分类体系来分类对象及从这种分类导出的数据结构
CN109190044A (zh) 个性化推荐方法、装置、服务器和介质
CN105005876A (zh) 客户行为采集分析***的使用方法
CN101645085B (zh) 不规则字段存储方法和***
CN105205749A (zh) 基于jsp的房产销售***
CN107292365A (zh) 商品标签的绑定方法、装置、设备及计算机可读存储介质
CN101206670A (zh) 用于将非结构化信息转换成内容的***和方法
CN101141525A (zh) 一种信息管理***以及信息管理方法
CN106599153A (zh) 一种基于多个数据源的废旧行业搜索***以及其方法
Reershemius Lamppost networks: stickers as a genre in urban semiotic landscapes
US8856179B2 (en) Method to send a short message service (SMS) campaign to a related object by selecting the base object
CN101783046B (zh) 一种无线电子促销***及其应用方法
CN102591984A (zh) 导航数据中兴趣点数据查询速度的优化方法
CN101702216A (zh) 一种支持多种库存业务配置的方法
CN101963993B (zh) 一种数据库单表记录快速查找的方法
CN101101627A (zh) 一种针对常旅客的服务***及实现方法
Beaulieu et al. Presidential marketing: Trade promotion effects of state visits
US20190213654A1 (en) Customer Engagement Platform For Providing Enhanced Content
CN107239962B (zh) 电子信息***中的多维度数据单元的匹配方法和***
CN103995832A (zh) 一种基于属性和关系分离进行复杂关系数据存储的技术实现方法
CN111737264A (zh) 信息处理方法及***
CN104318375A (zh) 一种小型超市商品信息管理***
CN112507207B (zh) 一种出行推荐方法及装置
CN107358565A (zh) 基于rfid的图书馆管理方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent for invention or patent application
CB02 Change of applicant information

Address after: 100094 Beijing city Haidian District North Road No. 68, UFIDA Software Park

Applicant after: Beijing Wecoo Electronic Business Technology Co., Ltd.

Address before: 100094 Beijing city Haidian District North Road No. 68, UFIDA Software Park

Applicant before: Beijing UFIDA Mobile Business Technology Co., Ltd.

COR Change of bibliographic data

Free format text: CORRECT: APPLICANT; FROM: BEIJING YONGYOU MOBILE BUSINESS TECHNOLOGY CO., LTD. TO: BEIJING WEIKU ELECTRONIC COMMERCE TECHNOLOGY CO., LTD.

C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee

Owner name: UFIDA SOFTWARE CO., LTD.

Free format text: FORMER NAME: BEIJING WEIKU ELECTRONIC COMMERCE TECHNOLOGY CO., LTD.

CP03 Change of name, title or address

Address after: 100094 Haidian District North Road, Beijing, No. 68

Patentee after: UFIDA Software Co., Ltd.

Address before: 100094 Beijing city Haidian District North Road No. 68, UFIDA Software Park

Patentee before: Beijing Wecoo Electronic Business Technology Co., Ltd.

C56 Change in the name or address of the patentee

Owner name: YONYOU NETWORK TECHNOLOGY CO., LTD.

Free format text: FORMER NAME: UFIDA SOFTWARE CO., LTD.

CP01 Change in the name or title of a patent holder

Address after: 100094 Haidian District North Road, Beijing, No. 68

Patentee after: Yonyou Network Technology Co., Ltd.

Address before: 100094 Haidian District North Road, Beijing, No. 68

Patentee before: UFIDA Software Co., Ltd.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120912

Termination date: 20180903