一种基于记录逻辑表示的数据库记录数据查询系统技术方案

技术编号:7809443 阅读:247 留言:0更新日期:2012-09-27 08:24
本发明专利技术涉及一种基于记录逻辑表示的数据库记录数据查询系统,该系统包括逻辑记录定义与映射组件、命名关系与限定类定义组件、逻辑记录查询组件、记录关系展开子过程、记录数据库。本发明专利技术将逻辑表示的一些思路和方法用于普通数据库数据的查询,但无需使用其复杂的实现技术;数据用户可针对数据库中的数据根据自己的需要定义逻辑记录,并通过逻辑记录与数据库记录之间的对应关系,将用逻辑记录表示记录查询条件或命令转化成数据库查询SQL语句;用户可通过记录命名关系定义规则自定义记录命名关系、记录限定类,并将记录命名、记录限定类用于记录查询条件表达式或命令中,使得记录查询条件的表达更加简单。

【技术实现步骤摘要】

本专利技术属于电子记录和数据库
,特别地,是ー种基于记录逻辑表示的数据库记录数据查询系统
技术介绍
关系数据库(relational database)被广泛用于存储各种应用数据。一个关系数据库由ー张或多张数据库表(database tab I e )组成,其中数据库表又由行(array )组成,而行又由多个字段(field)或列(column)组成,应用数据被最終保存在(ー张或多张)数据库表的相应行的相应字段中。保存在数据库表中的数据也称为记录(record)。保存在不同数据库表中的数据记录可通过一定的方式关联起来构成ー个更大的数据记录,或者形成具有一定关联关系的记录,前者对应于将一条记录保存在多张不同表中的情形,后者对应于不 同数据记录之间存在关联关系的情形(如,ー个病人的电子病历记录与其电子化验单记录之间的关联关系)。相同或者不同种类的记录之间的关联关系称为记录关系。关系数据库系统对保存在数据库中的满足一定条件或关系的记录数据的查询采用的是SQL (Structured Query Language)语句,使用SQL语句查询数据记录存在如下局限性或缺点I)需直接使用数据库表及其字段进行查询,需知道数据库表的结构,不适合于普通人群SQL直接使用数据库表、数据表字段表示查询条件,直接使用表的字段之间的相互关系(如〉,く,=等)来表示数据记录之间的关系;当记录数据保存在多张不同数据库表中时,需要将这些数据库表连接(join)起来查询并将来自不同数据库表的查询结果组合(SP将针对不同数据库表的记录字段的查询结果整合)。这种记录查询条件、记录关系的表达方式和查询结果组合方式,用户使用时需要知道数据库表的结构,且仅适合于熟悉数据库技术、具有相关专业知识的专业技术人员,普通用户根本无法使用。实际上,对普通人群来说,他们关心的往往是逻辑层面或者抽象层面表示的记录数据(称为逻辑记录),如某人的姓名、年龄、工作単位等信息,他们不关心记录数据在数据库的具体存放形式(数据库中的具体记录数据);使用记录数据的普通用户在表达满足某些条件或关系的记录时,往往用逻辑层面或抽象层面的记录信息(数据)来表达相关条件(如年龄大于20岁的人的身份信息、具有同一父母的人的身份信息),而不是用数据库表中的具体记录(因为他们甚至根本不懂什么是数据库!)。2)通过人机界面只能针对固定的记录数据内容进行查询,缺乏灵活性由于SQL不适合普通用户使用,因此,普通用户只能通过数据应用系统提供的专门的人机交互界面、按给定的方式对固定的记录数据内容进行查询,不能根据自己需要自定义查询对象、查询方式,缺乏灵活性。3)不能通过命名关系(named relation)查询相互关联的记录基于SQL语句,只能通过数据库表的记录字段之间的数值关系来表示记录(两条或更多)之间的关系,并查询、获取满足给定关系的记录,如表I和表2中满足表I中的字段A的值与表2中的字段B的值相等的A中记录数据与B中记录数据的组合,或者满足此关系的来自表I和表2的关联记录,不能通过直观的关系名称表示多条记录之间的关系,并查询、获取满足该种关系的记录,如电子病历记录和抽血化验单中满足“同一人”关系的电子记录组合等。本专利技术的目的就是要解决以上问题。逻辑表示是知识表示的ー种基本方式,能在此基础表示复杂的知识、进行逻辑推理,本专利技术的方案借用了知识表示的某些思路,如通过规则定义关系,但本专利技术所采用的逻辑表示与通常的逻辑表示(即知识表示)理论和方法不同,主要体现在如下几点I)数据库中的数据记录不是作为知识对象的描述信息,而是将其本身作为知识对象,记录数据的每个数据字段是其描述信息; 2)不同知识对象具体的实例之间的关系不作为知识保存在数据库中;3)所涉及的知识对象(记录类及其实例)不是预定的、固定的,而是数据库用户根据自己的需要针对数据库中的数据自己定义的;4)对关系数据库中的数据没有特别的格式、存放方式要求,适合于通常的关系数据库数据,保存在关系数据库中的应用数据不需要为了使用本方法和系统而做改变。5)最后在技术实现上,本专利技术的技术方案并没有使用逻辑表示/知识表示的复杂技术(如 Web Ontology/Resource Description Framework, 0WL/RDF),也没有使用相关的技木工具(如0WL/RDF工具);而是通过简单的记录关系定义和展开过程、抽象记录数据与数据库记录数据间的映射实现记录数据(知识)的查询、捜索。
技术实现思路
本专利技术的目的是提出一种数据库数据记录的用户可根据应用需要自定义数据库数据记录对象的抽象分类、且普通用户可据此通过人机界面自定义记录关系包括命名关系并以此作为记录查询条件查询所需记录数据而无需关心记录数据在数据库中具体存放形式和方式的基于记录逻辑表示的数据库记录数据查询系统,所述命名关系即具有名称的记录关系O为了实现上述目的,本专利技术所采用的技术方案是ー种基于记录逻辑表示的数据库记录数据查询系统,所述记录逻辑表示是ー种只与记录包含的信息内容有关而与记录数据的具体存储形式、方式和位置无关的一种记录数据表示形式或表达方式,用这种形式或方式表示的记录称为逻辑记录;在逻辑记录中,一条包含具体数据的记录称为逻辑记录实例,简称记录实例;针对同一目的、具有相同属性的逻辑记录实例的集合称为ー个逻辑记录类;与逻辑记录对应的、保存在数据库中的具体记录数据称为具体记录;记录类的记录实例集合中满足某种限定关系的记录实例的集合(子集)构成ー个新的记录类,称为原记录类的限定类,或记录限定类或限定记录类或简称限定类(除非特别指明,以下所述记录类、记录实例、记录关系指逻辑记录类、逻辑记录实例、逻辑记录关系)。所述系统包括逻辑记录定义与映射组件、命名关系与限定类定义组件、逻辑记录查询组件、记录关系展开子过程、记录数据库,其中逻辑记录定义与映射组件ー个具有人机交互界面的功能模块,数据管理员通过该组件对保存在关系数据库中的记录数据进行抽象的逻辑表示,定义相应的逻辑记录类,以及逻辑记录数据与数据库数据之间的对应关系或映射关系;命名关系与限定类定义组件ー个具有人机交互界面的功能模块,普通用户通过该组件输入逻辑记录命名关系定义规则,定义记录命名关系,以及通过该组件定义已有逻辑记录类的限定类;逻辑记录查询组件ー个具有人机交互界面的功能模块,普通用户通过该组件输入用逻辑记录关系表示的记录查询条件,查询、获取满足条件的逻辑记录数据;记录关系展开子过程在记录数据查询过程中被逻辑记录查询组件调用,基于逻辑记录命名关系定义规则或限定类定义规则,展开、替换记录关系表达式中的命名关系和/ 或记录限定类,使得最終的作为记录查询条件的记录关系表达式中不包含命名关系和/记录限定类;记录数据库存放具体记录数据的关系数据库系统。所述逻辑记录定义与映射组件按如下步骤定义逻辑记录,以及逻辑记录数据与数据库具体记录数据之间的对应关系第I步定义ー个逻辑记录类及其唯一名称和/或标识(ID);第2步定义所述逻辑记录类的记录实例所包含的记录字段及每个字段的类型(如字串、文本、字节、整数、日期、时间等);第3步定义所述逻辑记录类与数据库表的对应关系,包括所述逻辑记录类对应的一张或多张数据库表的名称;第4步定义所述逻辑记录类本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.ー种基于记录逻辑表示的数据库记录数据查询系统,所述记录逻辑表示是ー种只与记录包含的信息内容有关而与记录数据的具体存储形式、方式和位置无关的ー种记录数据表示形式或表达方式,用这种形式或方式表示的记录称为逻辑记录;在逻辑记录中,一条包含具体数据的记录称为逻辑记录实例,简称记录实例;针对同一目的、具有相同属性的逻辑记录实例的集合称为ー个逻辑记录类;与逻辑记录对应的、保存在数据库中的具体记录数据称为具体记录;记录类的记录实例集合中满足某种限定关系的记录实例的集合构成ー个新的记录类,称为原记录类的限定类,或记录限定类或限定记录类或简称限定类; 所述系统包括逻辑记录定义与映射组件、命名关系与限定类定义组件、逻辑记录查询组件、记录关系展开子过程以及记录数据库,其中 逻辑记录定义与映射组件ー个具有人机交互界面的功能模块,数据管理员通过该组件对保存在关系数据库中的记录数据进行抽象的逻辑表示,定义相应的逻辑记录类,以及逻辑记录数据与数据库数据之间的对应关系或映射关系; 命名关系与限定类定义组件一个具有人机交互界面的功能模块,普通用户通过该组件输入逻辑记录命名关系定义规则,定义记录命名关系,以及通过该组件定义已有逻辑记录类的限定类;所述命名关系为具有名称的记录关系; 逻辑记录查询组件ー个具有人机交互界面的功能模块,普通用户通过该组件输入用逻辑记录关系表示的记录查询条件,查询、获取满足条件的逻辑记录数据;所述逻辑记录关系简称记录关系; 记录关系展开子过程在记录数据查询过程中被逻辑记录查询组件调用,基于逻辑记录命名关系定义规则或限定类定义规则,展开、替换记录关系表达式中的命名关系和/或记录限定类,使得最終的作为记录查询条件的记录关系表达式中不包含命名关系和/记录限定类; 记录数据库存放具体记录数据的关系数据库系统。2.根据权利要求I所述的基于记录逻辑表示的数据库记录数据查询系统,其特征在于 所述逻辑记录定义与映射组件按如下步骤定义逻辑记录以及逻辑记录数据与数据库具体记录数据之间的对应关系 第I步定义ー个逻辑记录类及其唯一名称和/或标识; 第2步定义所述逻辑记录类的记录实例所包含的记录字段及每个字段的类型; 第3步定义所述逻辑记录类与数据库表的对应关系,包括所述逻辑记录类对应的一张或多张数据库表的名称; 第4步定义所述逻辑记录类的记录实例的记录字段与所述对应的数据库表的字段之间的对应关系或映射关系; 第5步定义相关数据库表之间的关联方式; 不同的逻辑记录类及其记录实例所对应的数据库表以及数据表字段既可以相同,也可以不同;所述逻辑记录实例有ー个在所属记录类中唯一的名称或标识来代表自己;逻辑记录实例用其记录数据中的某个记录字段的值作为其名称或标识,或者用记录字段的导出值作为其名称或标识;对于ー个确定的或已知的逻辑记录实例,其名称是ー个由字串组成的确定的常量,称为逻辑记录实例名称常量或常量名称或确定名称,相应的逻辑记录实例称为常量逻辑记录实例,在记录查询条件中,逻辑记录实例名称常量即代表这个确定的、已知的逻辑记录实例;对于不确定的或待定的逻辑记录实例,其名称是ー个不定量,即名称的内容或值是不确定,用一个变量名代替,称为逻辑记录实例名称变量,相应的逻辑记录实例称为变量逻辑记录实例,在进行记录数据查询时,逻辑记录实例名称变量即代表需要查询获取的、满足查询条件的一个或多个逻辑记录实例。3.根据权利要求I或2所述的基于记录逻辑表示的数据库记录数据查询系统,其特征在于 所述记录关系或者是逻辑记录实例的记录字段与常数值之间关系,或者是两个逻辑记录实例之间的字段关系,或者是两个逻辑记录实例之间的命名关系,或者是这些关系的逻辑“与”运算组合;其中,所述逻辑记录实例的记录字段与常数值之间关系,即记录字段与常数值之间的数值关系,其表达式中包含如下信息逻辑记录实例的记录类名、逻辑记录实例的名称、逻辑记录实例的相关字段名及该字段与常数值之间的数值关系;所述两个逻辑记录实例之间的字段关系,即两个逻辑记录实例的记录字段之间的数值关系,其表达式中包含如下信息相关逻辑记录实例的记录类名、相关逻辑记录实例的名称、相关逻辑记录实例的相关字段名,以及相关逻辑记录实例的记录字段之间的数值关系;逻辑记录实例的记录字段与常数值之间关系和两个逻辑记录实例之间的字段关系统称为逻辑记录实例字段关系;两个逻辑记录实例之间的命名关系,即用命名关系表示的两个记录实例之间的关系,其表达式包含如下信息相关逻辑记录实例的记录类名,相关逻辑记录实例的名称,以及相关逻辑记录实例之间命名关系的名称;出现在记录关系中的逻辑记录实例或者是常量逻辑记录实例,或者是变量逻辑记录实例;若出现在记录关系中的逻辑记录实例是常量逻辑记录实例,则其名称使用名称常量;若出现在记录关系中的逻辑记录实例是变量逻辑记录实例,则其名称使用名称变量;在记录关系表达式中,通过相应的方式区分名称常量和名称变量;所述记录关系的逻辑运算组合中的每个组成因子,即变量逻辑记录实例的记录字段与常数值之间关系或者两个记录实例之间的字段关系或者两个记录实例之间的命名关系,称为记录关系表达式的关系因子;所述关系因子的逻辑评估值是“真”或“假”。4.根据权利要求I或2所述的基于记录逻辑表示的数据库记录数据查询系统,其特征在于 所述命名关系与限定类定义组件使用如下命名关系定义规则定义逻辑记录实例之间的命名关系 如果两个逻辑记录实例并通过相关的中间逻辑记录实例满足给定的记录关系,那么这两个逻辑记录实例间存在所定义的命名关系; 所述关系定义规则中的如果语句对应于规则条件,即结果成立需要满足的前提;所述关系定义规则中的那么语句对应于规则的結果,即要定义的命名关系;所述规则的条件中出现的两个逻辑记录实例并通过相关的中间逻辑记录实例需要满足的给定的记录关系称为命名关系定义规则的条件关系,简称规则条件关系;所述命名关系定义规则的结果中的两个逻辑记录实例至少ー个是变量逻辑记录实例;所述命名关系定义规则的条件关系中的中间逻辑记录实例,指在规则条件关系中出现的而在规则结果中不出现的常数或变量逻辑记录实例;记录关系定义规则中出现的逻辑记录实例的名称变量,包括额外的、中间变量记录实例的名称变量,对于记录关系的定义和表达是无关紧要的;ー个命名关系的定义规则的条件关系中可以使用其他已定义的命名关系,但不能直接或间接使用规则要定义的命名关系本身,即不能递归定义;ー个命名关系可用多条所述命名关系定义规则定义,多条规则之间是逻辑“或”的关系,即只要一条规则被满足,则两个记录实例之间存在相应的命名关系O5.根据权利要求I或2所述的基于记录逻辑表示的数据库记录数据查询系统,其特征在于 所述命名关系与限定类定义组件内部通过如下特别的逻辑记录命名关系定义规则提供记录限定类的定义功能 如果某个已存在的逻辑记录类的变量记录实例并通过其他中间逻辑记录实例满足给定的记录关系,那么这个变量逻辑记录实例与要定义的记录限定类中的任意实例具有预定的命名关系属于同一记录类; 其中,给定的记录关系即是对所述逻辑记录类中记录实例的限定关系;所述记录限定类的任意记录实例用ー个具有特别的名称变量变量名的变量逻辑记录实例表示;所述表示任意记录实例的变量逻辑记录实例的名称变量不出现在规则条件关系的表达式中;基于所述特别的记录命名关系定义规则,所有满足这个属于同一记录类记录关系的变量记录实例所对应的记录实例即构成了要定义的已存在的记录类的限定类;限定类定义可以嵌套,即在已定义的限定记录类的基础上进ー步定义记录限定类;但限定类定义不能递归,即定义规则的规则条件中不能直接或间接地包含要定义的限定类本身; 所述特别的关系定义规则,仅在命名关系与限定类定义组件内部使用;在命名关系与限定类定义组件外部,即用...

【专利技术属性】
技术研发人员:龙毅宏唐志红杨浩肖凡刘旭白波
申请(专利权)人:北京天威诚信电子商务服务有限公司武汉理工大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1