一种建立语义目标数据模型的系统,使得用户能够生成数据库管理系统用于存储和检索数据的关系型数据库模式,该系统包括: 使得用户能够生成多个语义目标的装置,所述语义目标对应于限定了数据库模式的多个关系表; 使得用户能够将属性与至少一个语义目标联系起来的装置,所述属性描述了所述语义目标的所有实例所共有的至少一个特性; 使得用户能够定义各语义目标之间关系的装置;以及 用于将语义目标、属性以关系转换成限定数据库模式的一个或多个关系表的装置。(*该技术在2014年保护过期,可自由使用*)
【技术实现步骤摘要】
本专利技术一般涉及计算机系统,特别是涉及能够生成数据库模式的系统。随着计算机成本的降低,越来越多的人们在购买具有优越计算能力和数据存储能力的计算机系统。这类计算机系统除了用在字处理和电子数据表格程序等方面,还有另外一个主要用途,这就是使用商业上用的数据库管理系统(DBMS)产品来存储和检索数据。例如,家用计算机系统的用户可能希望将有关投资业务的信息存储在计算机中,并能够随时地访问这些信息。类似地,一家小公司的所有者可能希望使用计算机系统来跟踪其客户、库存和销售订单。尽管用户可以使用商业用的数据库程序来存储和检索这类信息,但是现有的数据库程序的学习曲线非常陡峭,这使得一般水平的计算机用户除了最简单的数据库之外不敢开发其他任何数据库了。大多数传统的数据库程序都是使用所谓的关系型数据库结构。这些关系型数据库由一个或多个包含多个行和列的二维表组成。关系表的每一行都定义了一个数据记录。例如,在一客户表中,每一行都是关于数据库中一特定客户的。关系表的列用于存储每个记录的特定属性。例如,用某一列存储客户的姓,同时用其它列来存储用户的名字、客户所在街道或客户的信箱号等等。通常将数据库中所存储的数据的关系表的结构称为数据库模式。使用商业上可获得的数据库程序的主要困难在于必须知道如何定义数据库模式。通常,除了建立最简单的数据库之外,用户如果想建立一个数据库,则他必须是一个专业的数据库设计者或聘请一位顾问。但这两方面都不太可能,因为大多数计算机用户没有时间或者也不希望成为专业的数据库设计者,并且因为费用问题也不愿意聘请顾问。在现有的数据程序中存在的另一问题是强迫用户必须按数据库程序所要求的方式来定义将要存储在数据库中的数据。例如,在生成一新的数据库时,大多数数据库程序呈现给用户的都是一空白表,并要求用户自己来确定每列的数据类型。如果需要一个以上的表来定义数据库模式,则为了建立表与表之间的关系,用户必须生成每个附加表,并且定义两个表或多个表所共有的关键字字段或属性。这种方法的问题是,用户很有可能没有考虑数据将存储在哪些表、哪些字段中,以及关键字是什么。例如,用户希望建立一个投资业务数据库,但他想到的只是数据中应包括持有股票的公司的名字、每个公司持有股份、购进价格、购进日期、价格—利率比等。由于这类商用数据库程序要求用户必须按其严格规则来定义关系表,所以用户必须用这种不自然方式考虑将要存储的数据并识别出它们的特征。于是,人们迫切需要这样一种系统用户即使不熟悉数据库技术或定义数据库的规则,也能建立一个关系数据库模式。这种系统使用起来更方便,同时也能在通用计算机系统上运行。此外,用户能以反映他们数据观点的方式来定义将要存储的数据。为了解决在现有技术的数据库系统中存在的这些问题,本专利技术的系统使得用户能够很方便地建立数据库模式。该系统允许用户建立一个像簿(album),该像簿可定义一个多个关系型数据库表的语义目标数据模型,其中这些关系型数据库表定义了数据库模式。由像簿定义的语义目标数据模型包括一个或多个语义目标,每个语义目标都包括一个或多个用于定义语义目标特性的属性。这些属性被定义成(a)用于描述语义目标单个属性的简单值属性;(b)包括一个或多个成员属性的组属性,该组属性用于整体地描述语义目标的特性;(c)建立公式的公式属性,该属性用于描述语义目标的特性;或(d)目标链属性,用于定义一个或多个语义目标之间的关系。像簿建立之后,系统马上对其进行有效性检验,以确定用户是否犯了模型建立错误。在证实像簿是有效的之后,系统就将语义目标及其包含在像簿中的包含属性传送给多个关系型数据库表,这些关系型数据库表将按语义目标数据模型所定义的方式来存储数据。本专利技术还包括一种能对像簿进行有效性验证的方法,用于判断在像簿中是否存在任何与像簿中其它语义目标都无联系的语义目标。该有效性验证方法还判断在像簿中是否存在可以相互唯一地识别的语义目标。该有效性方法还判断是否存在对公式属性的递归定义。本专利技术还包括一种用于解释公式属性的方法。该方法包括搜索语义目标步骤,以搜索出用在公式属性的表示特征中的项的名称。该系统从公式属性开始向包含公式属性的语义目标以及语义目标数据模型中的其它语义目标进行扩展环搜索。该搜索产生一个或多个属性表,这些属性与公式属性具有相同的逻辑距离。搜索该属性表以找出所有具有公式表示特征中所使用的属性名的属性例子以及所有通向公式中使用一单个属性的路径。如果在语义目标数据模型中——该语义目标数据模型对于用在一公式中的相同属性具有相同名称或两条不同路径,存在两个或多个属性,则该系统提示用户决定在公式中使用哪个属性或哪条路径。扩展环搜索可以使得用户能够根据在其它语义目标中定义的属性来定义一公式。通过参照以下附图的详细描述可以更好地理解本专利技术前述的各个方面以及许多附加优点。附图说明图1表示一图形用户接口屏幕的计算机显示,它可以使用户建立一个依照本专利技术的数据库模式;图2表示一图形用户接口屏幕的计算机显示,它示出了可以由用户进行处理并能转换成数据库模式的多个语义目标的一个例子;图3表示一计算机显示屏幕,它示出了用户能够改变语义目标、简要特征表(profile)或属性的一个或多个特征值的示意性特征窗口;图3A是可以实施本专利技术的计算机系统的方框图;图4是本专利技术在生成语义目标时所执行步骤的流程图;图5是生成一简单值简要特征表所执行步骤的流程图;图6是生成一简单值属性所执行步骤的流程图;图7是生成组简要特征表时所执行步骤的流程图;图8是生成组属性时所执行步骤的流程图;图9是生成公式简要特征表时所执行步骤的流程图;图10是生成公式属性时所执行步骤的流程图;图11是生成目标链简要特征表时所执行步骤的流程图;图12是生成目标链属性时所执行步骤的流程图;图13是生成父型属性时所执行步骤的流程图;图14是生成子型属性所要求的步骤的流程图15是生成子型组属性所要求的步骤的流程图;图16A-16C是在向语义目标中插入一属性时所执行步骤的一系列流程图;图17A-17B是将属性插入到组属性中时所执行步骤的一系列流程图;图18是将简要特征表插入到组文件中时所执行步骤的流程图;图19A-19B是将属性插入到子型组属性中时所执行步骤的一系列流程图;图20A-20C是评价公式属性时所执行步骤的一系列流程图;图20D-20I是在对语义目标数据模型进行有效性验证时所执行步骤的一系列流程图;图21是本专利技术将语义目标转换成一个或多个关系表时所采取步骤的流程图;图22是本专利技术将简单值属性转换成关系表时所采取的步骤的流程图;图23是本专利技术将组属性转换成一个或多个关系表时所采取的步骤的流程图;图24是本专利技术将公式属性转换成关系表时所采取的步骤的流程图;图25A-25C是本专利技术将目标链属性转换成一个或多个关系表时所采取步骤的一系列流程图;图26是本专利技术将父型属性转换成一个或多个关系表时所采取步骤的流程图;图27是本专利技术将子型组转换成一个或多个关系表时所采取的步骤的流程图;图28是本专利技术将父型组变换成一个或多个关系表时所采取的步骤的流程图;以及图29是本专利技术在定义关系表的主关键字和提示用户解决在语义目标数据模型转换过程中出现的表关键字歧义所采取的步骤的流程图。如上所述,用户使用本专利技术的系统能够很方本文档来自技高网...
【技术保护点】
【技术特征摘要】
【专利技术属性】
技术研发人员:大卫M克罗恩克,克里斯托弗C奥尔兹,河合健次,李I埃格布罗坦,
申请(专利权)人:瓦尔数据公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。