一种存储、访问数据库数据的方法、装置及系统的制作方法

文档序号:6574268阅读:170来源:国知局
专利名称:一种存储、访问数据库数据的方法、装置及系统的制作方法
技术领域
本发明涉及计算机领域,特别涉及一种存储、访问数据库数据的方法、装 置及系统。
背景技术
目前,通常使用数据库在计算机上保存数据,通过数据库对数据进行处理, 使用数据库必须在计算机上安装数据库软件,应用程序或管理者使用数据库软 件的相关功能完成对数据记录的存储、读取等操作。但是,在通过数据库软件提供的功能来对数据记录进行操作的同时,存在如下的问题1、 数据记录本身依赖于数据库软件而存在,所以,当数据库软件被破坏 时,数据记录也随之被破坏或不能正常读写,相应的,应用程序或管理者也无 法使用或操作这些数据。2、 由于数据库的种类很多,而各种数据库软件提供的功能也不相同,而 且各数据库软件之间不一定能兼容,因此会导致数据记录不能方便地从一种数 据库软件移植到另 一种数据库软件。发明内容本发明提供一种存储、操作数据库数据的方法及装置,用于解决现有技术 中数据库数据依赖于数据库软件而存在,从而导致数据库数据存储和操作受限 的问题。本发明提供如下技术方案一种存储数据库数据的方法,包括步骤序列化程序从关系型数据库中获取数据对象;所述序列化程序按照定义的序列化规则将所述数据对象转换成对应的二 进制编码;以及将所述二进制编码保存为二进制文件。将所述关系型数据库中的每一条数据记录保存为 一个二进制文件。 将所述二进制文件输出到存储介质时,同时输出所述序列化程序和/或将所 述二进制文件转换成对应的数据对象的反序列化程序。 一种访问数据库数据的方法,包括步骤应用程序向反序列化程序请求访问关系型数据库中的数据记录,其中,所 述关系型数据库中的数据记录由序列化程序按照序列化规则转换成对应的二 进制编码后保存在二进制文件中;所述反序歹'j4b考呈序才艮据与戶斤J进制文件转换成对应的数据对象,并将该数据对象输出给所述应用程序; 所述应用程序对所述数据对象进行操作。所述应用程序对所述数据对象进行操作后,所述序列化程序进一步根据序 列化规则将发生变化的数据对象转换成对应的二进制编码后保存为二进制文 件。将所述关系型数据库中的每一条数据记录保存为 一个二进制文件。 将二进制文件输出到存储介质时,同时输出所述序列化程序和/或将所述二 进制文件转换成对应的数据对象的反序列化程序。 一种数据处理装置,包括 用于从关系型数据库中获取数据对象的单元; 用于根据序列化规则将所述数据对象转换成对应的二进制编码的单元; 用于将所述二进制编码保存为二进制文件的单元。 所述装置还包括用于输出所述二进制文件、序列化程序和/或将所述二进制文件转换成对应的数据对象的反序列化程序的单元。一种数据处理装置,包括用于接收应用程序请求访问关系型数据库中的数据记录的单元,其中,所 述关系型数据库中的数据记录由序列化程序按照序列化规则转换成对应的二 进制编码后保存在二进制文件中;用于根据与所述序列化规则对应的反序列化规则将所述二进制文件转换成对应的数据对象的单元;用于输出所述数据对象的单元。 一种存储、访问数据库数据的系统,包括 关系型数据库,用于存储数据记录;应用模块,用于发送访问关系型数据库中的数据记录的请求; 数据处理装置,用于从关系型数据库中获取数据对象,按照定义的序列化 规则将所述数据对象转换成对应的二进制编码,并将其保存为二进制文件;或 者,根据与所述序列化规则对应的反序列化规则将所述二进制文件转换成对应的数据对象,并将所述数据对象输出给所述应用模块。 所述数据处理装置包括 用于从关系型数据库中获取数据对象的单元;用于根据序列化规则将所述数据对象转换成对应的二进制编码的单元; 用于将所述二进制编码保存为二进制文件的单元。 较佳的,所述数据处理装置还包括用于输出所述二进制文件、序列化程序和/或将所述二进制文件转换成对应 的数据对象的反序列化程序的单元。 所述数据处理装置包括用于接收应用程序请求访问关系型数据库中的数据记录的单元,其中,所 述关系型数据库中的数据记录由序列化程序按照序列化规则转换成对应的二 进制编码后保存在二进制文件中;用于根据与所述序列化规则对应的反序列化规则将所述二进制文件转换成对应的数据对象的单元;用于输出所述数据对象的单元。 本发明有益效果如下1、 本发明中在存储数据库数据时,将数据库中的数据记录转换成对应的 二进制编码,并以二进制文件形式保存,由于二进制编码不经过转换无法正确 读取,因此,本发明方法可以保证数据的保密性。2、 本发明中将数据记录保存为二进制文件,数据记录本身不依赖于数据 库软件而存在,而且在计算机不需要或者不允许安装数据库软件时,采用本发 明方法可以方便地存储和操作数据,从而拓宽数据的使用场合和方便了对数据 的操作。3、 本发明中在使用数据库数据时,应用程序调用将二进制文件中的二进 制编码转换成对应的数据记录,并对该数据记录进行相应操作,本发明方法在 不访问数据库的情况下实现了对数据库数据的操作,因此,本发明方法为数据 库提供了支持,可以减轻数据库的使用压力,提高数据库的性能。


图1为本发明实施例中一种数据处理系统结构示意图;图2为本发明实施例中数据处理模块结构示意图;图3为本发明实施例中存储数据库数据的实现流程图;图4为本发明实施例中向计算机访问数据库数据的实现流程图;图5为本发明实施例中向存储介质访问数据库数据的实现流程图。
具体实施方式
为了不依赖数据库软件而对数据库中的数据进行存储、复制和使用,本实 施例中将从数据库中获取的数据记录转换成对应的二进制编码,并以二进制文件形式保存;在使用数据时,从二进制文件中获取二进制编码后将其转换成对 应的数据记录,以供应用程序操作。如图1所示,本实施例中一种数据处理系统包括关系型数据库10、数据处 理模块11和应用模块12;所述应用模块12用于向所述数据处理模块11发送 访问所述关系型数据库10中的数据记录的请求;所述数据处理模块11根据所 述请求从所述关系型数据库10中获取相应的数据记录,按照定义的序列化规 则将该数据记录转换成对应的二进制编码,并将其保存为二进制文件;或者, 根据与所述序列化规则对应的反序列化规则将所述二进制文件转换成对应的 数据对象,并将所述数据对象输出给所述应用模块12。关系型数据库IO,由多个数据表组成,每个数据表由多条数据记录组成, 每条数据纪录由多个字段组成。例如,某电子商务网站需要记录使用者的数据, 该数据可以是使用者的账号、密码、姓名、电话、住址等,而每一个需要记录 的数据项目即为一个字段。本实施例中将数据记录转换为对应的二进制编码的序列化规则可以自定 义设置,该序列化规则用于描述数据字段的排列顺, 例如, 一条数据由三个字段A、 B、 C,每个字段值分别为al、 bl、 cl,定 义T符号用于分隔符,此时,该条数据对应的文本为al|bl|cl,将这段文本 中的每个字符转换成计算机语言中的二进制值,并将该二进制值存储在文件中。如图2所示,所述数据处理模块11包括接收单元110,用于接收应用模块12发送的访问所述关系型数据库10中的数据记录的请求。序列化单元111,用于在接收单元110接收到存储数据库数据的请求时, 从数据库10中获取数据对象,并根据序列化规则将所述数据对象转换成对应 的二进制编码,以及将所述二进制编码保存为二进制文件。反序列化单元112,用于在接收单元110接收到操作数据库数据的请求时,根据与所述序列化规则对应的反序列化规则将二进制文件转换成对应的数据 对象。输出单元113,用于将序列化单元111得到的二进制文件和将所述二进制文件转换成对应的数据对象的反序列化程序输出给存储介质,或者,将反序列化单元112得到的数据对象输出给应用模块12。本实施例中序列化单元111和反序列化单元112可以单独或者同时存在于一个数据处理模块中。如图3所示,本发明实施例中存储数据库数据的实现过程如下步骤300、应用模块向数据处理模块发送数据存储请求。步骤301、数据处理模块将关系型数据库中的数据记录提取到计算机内存中,形成数据对象。步骤302、数据处理模块按照定义的序列化规则将所述数据对象转换成对应的二进制编码。步骤303、数据处理模块将所述二进制编码保存为二进制文件,该二进制 文件保存在计算机内存中;为了方便地对数据库数据进行访问,可以将该二进 制文件、将数据对象转换成对应的二进制文件的序列化程序和/或将二进制文件 转换成对应的数据对象的反序列化程序同时存储在其他存储介质中,如光盘、 移动硬盘、U盘、软盘等硬件介质。本实施例中将数据库中的数据记录存储在其他存储介质中,使得数据记录 本身不依赖于数据库软件而存在,采用该种存储方式可以方便地复制和传播数 据库中的数据记录,而且由于二进制编码在没有经过相应的转换后不能正确读 取数据,所以,以二进制文件形式保存数据库数据的方式保证了数据的保密性。本实施例中当应用模块请求访问关系型数据库中的数据时,可以完全不考 虑数据库软件兼容的问题,而是由数据处理模块根据应用模块的请求从在计算 机中保存或者在上述硬件介质中保存的二进制文件中获取相应的数据记录,以 供应用模块进一步对其进行操作。本实施例中将关系型数据库中的数据记录以二进制文件形式保存在计算机中时,如图4所示,应用模块访问二进制文件获拟目应数据记录的实现过程 包括步骤400、应用模块向数据处理模块发送访问数据库数据的请求。 步骤401、数据处理模块根据请求获取相应的二进制文件,并按照与序列 化规则对应的反序列化规则将其转换成对应的数据对象。步骤402、数据处理模块将所述数据对象输出给应用模块。 步骤403、应用^f莫块对所述数据对象进行相应操:作。本实施例中将关系型数据库中的数据记录以二进制文件形式保存在其他 存储介质中时,如图5所示,应用模块访问二进制文件获取相应数据记录的实 现过程包括步骤500、应用模块向存储介质发送访问数据库数据的请求。步骤501、存储介质根据请求在其内部获取相应的二进制文件,由其中的反序列化程序将该二进制文件转换为对应的数据对象,并将其输出给应用模块。步骤502、应用模块对所述数据对象进行相应操作。 应用模块对数据对象进行的操作包括读取数据操作、修改数据操作和新建 数据操作等;应用模块对数据对象进行修 文操作后,应用模块向数据处理模块发送数据存储请求,由数据处理模块按照定义的序列化规则将变化后的数据对 象转换为对应的二进制编码,并保存为二进制文件。 本发明实施例有益效果如下1、 本发明中将数据库中的数据转换成相应的二进制编码,并以二进制文 件形式保存,因此数据本身不依赖于数据库软件而存在,而且在计算机不需要 或者不允许安装数据库软件时,采用本发明方法可以方便地存储和读取数据, 从而拓宽了数据的使用场合和方便了对数据的操作。2、 本发明中在使用数据时,将二进制文件中的二进制编码转换成对应的数据记录以供应用程序使用,因此,在使用数据库的场合中,本发明提供的数 据记录脱离数据库存储和读取的方法,为数据库提供了支持,从而减轻了数据 库的使用压力,提高了数据库的性能。3、本发明中通过自定义规则将数据记录转换为二进制文件,由于二进制 编码不经过转换则无法正确读取,因此,本发明方法一定程度上保证了数据的 保密性。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若对本发明的这些修改和变型属于本发明权利要求 及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
权利要求
1. 一种存储数据库数据的方法,其特征在于,包括步骤序列化程序从关系型数据库中获取数据对象;所述序列化程序按照定义的序列化规则将所述数据对象转换成对应的二进制编码;以及将所述二进制编码保存为二进制文件。
2、 如权利要求1所述的方法,其特征在于,将所述关系型数据库中的每 一条数据记录保存为 一个二进制文件。
3、 如权利要求2所述的方法,其特征在于,将所述二进制文件输出到存 储介质时,同时输出所述序列化程序和/或将所述二进制文件转换成对应的数据 对象的反序列化程序。
4、 一种访问数据库数据的方法,其特征在于,包括步骤 应用程序向反序列化程序请求访问关系型数据库中的数据记录,其中,所述关系型数据库中的数据记录由序列化程序按照序列化规则转换成对应的二 进制编码后保存在二进制文件中;进制文件转换成对应的数据对象,并将该数据对象输出给所述应用程序; 所述应用程序对所述数据对象进行操作。
5、 如权利要求4所述的方法,其特征在于,所述应用程序对所述数据对 象进行操作后,所述序列化程序进一步根据序列化规则将发生变化的数据对象 转换成对应的二进制编码后保存为二进制文件。
6、 如权利要求4或5所述的方法,其特征在于,将所述关系型数据库中 的每一条数据记录保存为 一个二进制文件。
7、 如权利要求6所述的方法,其特征在于,将所述二进制文件输出到存 储介质时,同时输出所述序列化程序和/或将所述二进制文件转换成对应的数据 对象的反序列化程序。
8、 一种数据处理装置,其特征在于,包括 用于从关系型数据库中获取数据对象的单元;用于根据序列化规则将所述数据对象转换成对应的二进制编码的单元; 用于将所述二进制编码保存为二进制文件的单元。
9、 如权利要求8所述的装置,其特征在于,所述装置还包括用于输出所述二进制文件、序列化程序和/或将所述二进制文件转换成对应 的数据对象的反序列化程序的单元。
10、 一种数据处理装置,其特征在于,包括用于接收应用程序请求访问关系型数据库中的数据记录的单元,其中,所 述关系型数据库中的数据记录由序列化程序按照序列化规则转换成对应的二 进制编码后保存在二进制文件中;用于根据与所述序列化规则对应的反序列化规则将所述二进制文件转换成对应的数据对象的单元;用于输出所述数据对象的单元。
11、 一种存储、访问数据库数据的系统,其特征在于,包括 关系型数据库,用于存储数据记录;应用模块,用于发送访问关系型数据库中的数据记录的请求; 数据处理装置,用于从关系型数据库中获取数据对象,按照定义的序列化规则将所述数据对象转换成对应的二进制编码,并将其保存为二进制文件;或 者,根据与所述序列化规则对应的反序列化规则将所述二进制文件转换成对应的数据对象,并将所述数据对象输出给所述应用模块。
12、 如权利要求11所述的系统,其特征在于,所述数据处理装置包括 用于从关系型数据库中获取数据对象的单元;用于根据序列化规则将所述数椐对象转换成对应的二进制编码的单元; 用于将所述二进制编码保存为二进制文件的单元。
13、 如权利要求12所述的系统,其特征在于,所述数据处理装置还包括:用于输出所述二进制文件、序列化程序和/或将所述二进制文件转换成对应 的数据对象的反序列化程序的单元。
14、如权利要求ll所述的系统,其特征在于,所述数据处理装置包括用于接收应用程序请求访问关系型数据库中的数据记录的单元,其中,所 述关系型数据库中的数据记录由序列化程序按照序列化规则转换成对应的二 进制编码后保存在二进制文件中;用于根据与所述序列化规则对应的反序列化规则将所述二进制文件转换 成对应的数据对象的单元;用于输出所述数据对象的单元。
全文摘要
本发明公开了一种存储、访问数据库数据的方法及装置,用于解决现有技术中数据库中的数据记录依赖于数据库软件而存在,从而导致存储和访问数据库数据受到限制的问题;本方案中,存储数据库数据时,序列化程序从关系型数据库中获取数据对象,按照定义的序列化规则将所述数据对象转换成对应的二进制编码,并将其保存为二进制文件;访问数据库数据时,反序列化程序根据与所述序列化规则对应的反序列化规则将所述二进制文件转换成对应的数据对象,并将该数据对象输出给所述应用程序以进行操作;采用本发明存储数据库数据的方法,可以方便地对数据库数据进行存储、复制和使用。
文档编号G06F17/30GK101256561SQ20071008033
公开日2008年9月3日 申请日期2007年3月2日 优先权日2007年3月2日
发明者奎 肖 申请人:阿里巴巴集团控股有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1