CN100458793C - Mapping conversion method between data access level Xml format data and relational data - Google Patents
Mapping conversion method between data access level Xml format data and relational data Download PDFInfo
- Publication number
- CN100458793C CN100458793C CNB2007100157262A CN200710015726A CN100458793C CN 100458793 C CN100458793 C CN 100458793C CN B2007100157262 A CNB2007100157262 A CN B2007100157262A CN 200710015726 A CN200710015726 A CN 200710015726A CN 100458793 C CN100458793 C CN 100458793C
- Authority
- CN
- China
- Prior art keywords
- data
- field
- model
- definition
- type
- 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
Links
- 238000013507 mapping Methods 0.000 title claims abstract description 23
- 238000006243 chemical reaction Methods 0.000 title claims abstract description 19
- 238000000034 method Methods 0.000 title claims abstract description 18
- 238000013499 data model Methods 0.000 claims abstract description 68
- 238000011161 development Methods 0.000 claims description 18
- 238000013461 design Methods 0.000 claims description 13
- 230000006870 function Effects 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 6
- 238000012217 deletion Methods 0.000 claims description 3
- 230000037430 deletion Effects 0.000 claims description 3
- 238000007792 addition Methods 0.000 claims description 2
- 238000010276 construction Methods 0.000 claims description 2
- 230000007935 neutral effect Effects 0.000 claims description 2
- 230000015572 biosynthetic process Effects 0.000 claims 1
- 239000000470 constituent Substances 0.000 claims 1
- 230000003993 interaction Effects 0.000 claims 1
- 230000002688 persistence Effects 0.000 description 6
- 238000012423 maintenance Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
1、技术领域1. Technical field
本发明设计一种计算机应用技术,具体涉及一种数据访问层Xml格式数据与关系数据间的映射转换方法。The invention designs a computer application technology, and in particular relates to a mapping conversion method between Xml format data and relational data in a data access layer.
2、背景技术2. Background technology
软件的体系架构上通常可分为三层:界面表示层、业务逻辑层、数据访问层。通常在企业级应用开发环境中,面向对象的开发方法已经成为主流方法。对象只存在于内存中,如果要永久的保存对象数据,需要进行对象的持久化,即将对象存储到数据库中。反之,需要将数据从数据库中加载,构造为内存的对象。目前,关系型数据库仍然是主流的、使用最广泛的数据库,它存储数据的形式是非面向对象的。因此,把对象用关系数据库进行存取访问,需要进行映射和转换,这就是我们通常所说的数据访问层开发。手工编写和维护数据访问层的映射和转换代码,由于存在兼容数据库类型(Oracle、Sq1 Server、DB2、Sybase等)和版本之间的差异等等,这无疑是一项繁琐、耗时的工作。The software architecture can usually be divided into three layers: interface presentation layer, business logic layer, and data access layer. Usually in the enterprise application development environment, the object-oriented development method has become the mainstream method. Objects only exist in memory. If you want to save object data permanently, you need to persist the object, that is, store the object in the database. Conversely, data needs to be loaded from the database and constructed as memory objects. At present, the relational database is still the mainstream and the most widely used database, and the form of its data storage is non-object-oriented. Therefore, to access objects with relational databases, mapping and conversion are required, which is what we usually call data access layer development. Manually writing and maintaining the mapping and conversion code of the data access layer is undoubtedly a tedious and time-consuming task due to the differences between compatible database types (Oracle, Sq1 Server, DB2, Sybase, etc.) and versions, etc.
此外,业务应用系统中的数据,因为效率、空间等原因,一种数据往往需定义多个实体对象类型,这些对象类型的定义、转换、部署以及维护也较为繁琐,同时考虑异构系统之间通信的需求,因此需要一种通用的统一数据格式和对象形式对数据进行封装。In addition, for data in business application systems, due to reasons such as efficiency and space, one type of data often needs to define multiple entity object types, and the definition, conversion, deployment, and maintenance of these object types are also relatively cumbersome. Therefore, a common unified data format and object form are required to encapsulate the data.
3、发明内容3. Contents of the invention
本发明的目的是提供一种数据访问层Xml格式数据和关系数据之间的映射和转换方法,该方法主要包括设计时和运行时两个阶段,其中:The purpose of the present invention is to provide a mapping and conversion method between data access layer Xml format data and relational data, the method mainly includes two phases during design and runtime, wherein:
在设计时阶段,如图1所示,针对关系数据的数据结构以及对象与关系数据的映射和转换进行建模,描述为数据对象和数据模型两种元数据,数据对象是关系数据进行建模,将数据库中的表和视图的数据结构抽象出来,描述其名称、字段属性等。In the design-time stage, as shown in Figure 1, the data structure of relational data and the mapping and conversion of objects and relational data are modeled, described as two kinds of metadata, data objects and data models, and data objects are relational data for modeling , to abstract the data structure of tables and views in the database, and describe their names, field attributes, etc.
其中表或视图,描述其显示名称、编码、表或视图名(数据库标识)、作者、版本、创建日期等。Among them, the table or view describes its display name, encoding, table or view name (database identifier), author, version, creation date, etc.
其中字段属性中,主要信息有:字段显示名称,字段名(数据库标识)、字段类型、字段长度、是否必填、是否为关键字等。Among the field properties, the main information includes: field display name, field name (database identifier), field type, field length, whether it is required, whether it is a keyword, etc.
在字段属性中的字段类型,考虑需兼容多种类型的数据库,对数据类型进行了抽象,定义了一套中立的数据类型,和具体的某种数据库的数据类型之间建立映射关系,从而屏蔽数据库差异。在此基础上,另定义了业务系统中常用的一些业务数据类型,比如编号、名称、备注、金额等数据类型,其作用有两个:一是方便录入,二是对业务数据类型做了规定和统一,避免因为手工设置失误造成的程序错误。对于业务数据类型,提供扩展定义,用户在开发使用时可自行扩展。此外为了录入维护便利,提供了和数据库设计工具PD(Power Designer)文档格式之间的转换功能。用户可以在PD中进行数据库设计,保存为PD文档,直接导入生成数据对象。The field type in the field attribute considers that it needs to be compatible with multiple types of databases, abstracts the data type, defines a set of neutral data types, and establishes a mapping relationship with a specific database data type, thereby shielding Database differences. On this basis, some business data types commonly used in the business system are defined, such as number, name, note, amount and other data types, which have two functions: one is to facilitate input, and the other is to specify the type of business data And unification, to avoid program errors caused by manual setting errors. For business data types, extended definitions are provided, and users can expand by themselves during development and use. In addition, for the convenience of entry and maintenance, a conversion function between the document format and the database design tool PD (Power Designer) is provided. Users can design the database in PD, save it as a PD document, and directly import and generate data objects.
数据模型data model
业务实体是业务系统中数据的有机构成形式,一般由多张数据表构成,多张表之间构成主从关系和关联关系。数据模型便是用于描述业务实体的数据构成关系。在数据对象的基础上,对业务实体以及业务实体的关系进行建模,描述业务实体的的数据结构,业务实体的业务数据信息,业务实体之间的关系。A business entity is an organic form of data in a business system. It is generally composed of multiple data tables, and the master-slave and association relationships are formed between multiple tables. The data model is used to describe the data composition relationship of business entities. On the basis of data objects, model business entities and the relationship between business entities, describe the data structure of business entities, business data information of business entities, and the relationship between business entities.
1)数据模型的构成结构为:一个主表,多个从表,构成主从关系,从表下可再挂接从表,构成嵌套的主从关系。一个模型可以定义于其他模型的关联关系。1) The structure of the data model is: a master table, multiple slave tables, forming a master-slave relationship, and slave tables can be mounted under the slave table to form a nested master-slave relationship. A model can define relationships with other models.
2)数据模型和数据对象的关系。数据模型中的表,引用自数据对象,数据模型中表的字段对应数据对象中的字段,这种对应关系可以是完全对应,也可以是部分对应。即数据模型的表可以选择的对应数据对象中的部分字段。对应过来后,自动根据数据对象的描述信息,形成数据模型的描述信息,数据模型的表的编码、名称直接取自数据对象的编码和名称;数据模型中表的字段描述信息,部分取自数据对象的字段描述的信息:数据类型、是否必填、主键等。特别的,数据模型上定义的数据类型区别于数据对象上定义的数据类型,数据模型上定义的数据类型为面向开发编程语言的数据类型,而数据对象上的数据类型则是抽象自数据库的数据类型。比如,数据对象定义的“VARCHAR(n)”这种数据类型,在数据模型中对应“string”这种数据类型。2) The relationship between data models and data objects. The table in the data model is referenced from the data object, and the fields in the table in the data model correspond to the fields in the data object. This correspondence can be a complete correspondence or a partial correspondence. That is, some fields in the corresponding data object that the table of the data model can select. After corresponding, the description information of the data model is automatically formed according to the description information of the data object. The code and name of the table in the data model are directly taken from the code and name of the data object; the field description information of the table in the data model is partly taken from the data The information described by the fields of the object: data type, whether it is required, primary key, etc. In particular, the data type defined on the data model is different from the data type defined on the data object. The data type defined on the data model is the data type oriented to the development programming language, while the data type on the data object is the data abstracted from the database. type. For example, the data type "VARCHAR(n)" defined by the data object corresponds to the data type "string" in the data model.
3)数据模型的表属性信息:编号、名称、主键字段指定、主键生成规则、是否启用编码字段、编码字段指定、编码字段生成规则、数据分级定义、排序定义等。3) Table attribute information of the data model: number, name, primary key field designation, primary key generation rules, whether to enable coded fields, coded field designations, coded field generation rules, data classification definition, sorting definition, etc.
4)数据模型的字段属性信息。字段的显示名称、编号、标签(指代名)、字段数据用途、字段类型、字段对象类型定义、是否用作列权限分配、数据权限定义、是否必须、是否在插入时使用、是否在更新时使用等。部分字段属性定义解释如下:4) Field attribute information of the data model. Field display name, number, label (referring to name), field data purpose, field type, field object type definition, whether it is used as column permission assignment, data permission definition, whether it is required, whether it is used when inserting, whether it is used when updating use etc. Some field attribute definitions are explained as follows:
其中字段数据用途为:列表、卡片、打印、参照和查询条件,是多选的。Among them, the purpose of field data is: list, card, print, reference and query conditions, which are multiple choices.
其中字段对象类型定义用于指定字段的关联关系或者使用的枚举值定义。关联关系定义用于定义数据模型之间的关联关系。枚举值定义用于简单的录入帮助。比如“是”、“否”或者“男”、“女”等。其中列权限、数据权限定义用于和权限系统的关联定义。Among them, the field object type definition is used to specify the association relationship of the field or the enumeration value definition used. Relationship definition is used to define the relationship between data models. The enumerated values are defined for simple entry help. Such as "yes", "no" or "male", "female" and so on. Among them, the column permission and data permission definition are used for the association definition with the permission system.
5)数据模型的表的主从关系定义。指定主表和从表之间的关联关系,指定从表的一个或多个字段作为外键和主表的相应的一个或多个字段关联。5) Definition of the master-slave relationship of the tables of the data model. Specify the association relationship between the master table and the slave table, and specify one or more fields of the slave table as foreign keys to associate with one or more fields of the master table.
6)数据模型之间的关联关系。数据模型之间的关联关系是由数据模型的一个字段关联另一个数据模型中的一个字段而构成的。在字段属性中有一个字段对象类型定义,当选择为关联关系时,可以定义于另一个模型的关联。在关联中指定关联模型中与之关联的字段,关联的附加条件,并可指定在模型中查询关联的相关关联模型的字段,比如一个客户数据模型,其中有一个地区字段,关联地区数据模型,在关联的时候指定关联带出地区数据模型的地区编码、名称等信息。6) Association relationship between data models. The association relationship between data models is composed of a field in a data model associated with a field in another data model. There is a field object type definition in the field attribute, and when it is selected as an association relationship, it can be defined in another model's association. In the association, specify the fields associated with it in the association model, the additional conditions of the association, and specify the fields of the related association model to be queried in the model, such as a customer data model, which has a region field, the associated region data model, When linking, specify the link to bring out the area code, name and other information of the area data model.
设计时定义的数据对象和数据模型,用自定义的一套XML标记来描述,其保存格式本身为XML文档格式,作为元数据(描述数据的数据)资源来管理。The data objects and data models defined at design time are described by a set of custom XML tags, and the storage format itself is XML document format, which is managed as metadata (data describing data) resources.
运行时阶段runtime phase
图2-3所示,在运行时阶段,由数据访问引擎,根据设计时定义的元数据信息,结合输入的数据信息,动态的构造数据库存取访问的SQL语句,访问数据库,自动完成增删改查的数据访问层的功能。特别的,为了提高效率,对动态构造过程的结果进行适量的缓存。As shown in Figure 2-3, at the runtime stage, the data access engine, based on the metadata information defined at design time, combined with the input data information, dynamically constructs SQL statements for database access access, accesses the database, and automatically completes additions, deletions, and modifications Check the function of the data access layer. In particular, the results of the dynamic construction process are moderately cached for efficiency.
为兼容数据库差异,在数据访问引擎构造SQL以及访问数据库时,根据元数据的相关信息,根据当前访问的数据库类型和版本,针对数据库类型和版本之间方言的差异,使用策略模式,动态的调整SQL语句以适应不同的数据库类型和版本。In order to be compatible with database differences, when the data access engine constructs SQL and accesses the database, according to the relevant information of the metadata, according to the type and version of the currently accessed database, and for the dialect differences between the database type and version, use the strategy mode to dynamically adjust SQL statements to suit different database types and versions.
此外,对于业务系统中编号生成规则,权限集成等提供扩展接口定义,以使用不同的应用场景。在开发和实施过程中,根据不同业务场景的需要,可以自定义实现扩展接口并注册到数据访问引擎中,以实现扩展的功能。默认的,数据访问引擎中集成了常用的编号生成规则以及权限集成的实现。In addition, it provides extended interface definitions for number generation rules and permission integration in business systems to use different application scenarios. In the process of development and implementation, according to the needs of different business scenarios, the extension interface can be customized and registered in the data access engine to realize the extended functions. By default, the data access engine integrates common number generation rules and the implementation of permission integration.
针对对象类型定义和维护的繁琐,数据访问引擎的的数据交换标准为XML。在返回XML的同时,提供返回XML的XML Schema的功能。数据访问引擎提供默认的Xml访问对象,也可以利用其他的系统基础类库提供的XML访问对象进行访问。并且为在异构系统之间交互数据和数据标准提供了很好的支持。For the cumbersome definition and maintenance of object types, the data exchange standard of the data access engine is XML. While returning XML, it provides the function of returning the XML Schema of XML. The data access engine provides the default Xml access object, and can also use the XML access object provided by other system basic class libraries for access. And it provides good support for exchanging data and data standards between heterogeneous systems.
从外部调用接口方面,定义了本地调用和We浪潮集团山东通用软件有限公司服务调用两种客户端,便于不同的应用开发模式的调用。From the aspect of external call interface, two clients are defined: local call and We Inspur Group Shandong General Software Co., Ltd. service call, which is convenient for calling in different application development modes.
这样就完成了在数据访问层Xml格式数据和关系数据之间的映射和转换XML-RelationDataMapping,简称为XR-Mapping。In this way, the mapping and conversion of XML-RelationDataMapping between data in the data access layer Xml format and relational data is completed, which is referred to as XR-Mapping.
本发明的有益效果是:XML格式数据和关系数据之间的映射和转换技术,能够有效的封装The beneficial effects of the present invention are: the mapping and conversion technology between XML format data and relational data can effectively encapsulate
对关系数据库的存取访问,屏蔽了底层数据库由于数据库的种类、版本等差异造成的开发复杂度,提供了一种标准的XML数据访问和传输格式,使得开发者不用编写任何代码即可实现持久化层存取访问的功能,从而非常有效的降低了软件系统持久化层的开发难度、开发风险。此外,这种方法使得业务数据的结构调整变得简单,当数据库结构和业务单据结构发生调整时,通过图形化的数据对象、数据模型设计器进行调整,不需要进行编译和物理发布,即可完成调整工作。有效的降低了软件系统实施和维护过程中的成本和风险以及软件厂商的开发、实施成本。使软件系统能够快速适应用户的个性化需求,满足用户不断发展和完善信息系统的长期目标。Access to relational databases shields the development complexity of the underlying database due to differences in database types and versions, and provides a standard XML data access and transmission format, enabling developers to achieve persistence without writing any code The access function of the persistence layer can effectively reduce the development difficulty and development risk of the persistence layer of the software system. In addition, this method simplifies the structural adjustment of business data. When the database structure and business document structure are adjusted, adjustments can be made through graphical data objects and data model designers without compilation and physical release. Complete the adjustment work. It effectively reduces the cost and risk in the process of software system implementation and maintenance, as well as the development and implementation costs of software manufacturers. Enable the software system to quickly adapt to the individual needs of users and meet the long-term goals of users' continuous development and improvement of information systems.
附图说明 Description of drawings
图1是设计时阶段的数据建模示意图;Figure 1 is a schematic diagram of data modeling in the design-time phase;
图2时数据之间的映射和转换示意图;Figure 2 is a schematic diagram of mapping and conversion between data;
图3是数据访问引擎高层的设计图。Figure 3 is a high-level design diagram of the data access engine.
4、实施方式:4. Implementation method:
实施方式也分为设计时(数据建模)和运行(数据存取、转换)时两个阶段。在设计时,通过数据建模,对业务数据的静态结构进行分层描述(数据对象描述数据库结构,数据模型描述业务数据结构);在运行时,根据设计时描述,动态解析,完成XML数据和数据库关系数据之间的映射和转换。The implementation method is also divided into two stages: design time (data modeling) and operation time (data access, conversion). At design time, through data modeling, the static structure of business data is described hierarchically (data object describes the database structure, and data model describes the business data structure); at runtime, according to the design-time description, dynamic analysis is completed to complete the XML data and Mapping and transformation between database relational data.
4.1设计时4.1 Design time
如附图1所示,在设计时:As shown in Figure 1, when designing:
(一)根据业务需求抽象出的数据结构,建立数据对象(数据库中表结构的描述),描述表的数据库名,表的所属列以及列的相关字段信息(字段名、类型、长度、精度、是否唯一、是否可为空值等)。(1) According to the data structure abstracted from business requirements, establish data objects (description of the table structure in the database), describe the database name of the table, the column to which the table belongs, and the relevant field information of the column (field name, type, length, precision, unique, nullable, etc.).
(二)根据业务需求抽象出的业务单据,建立数据模型,描述业务单据的构成(一般的一张业务单据是由一张主表和多张从表构成)。具体的:(2) Based on business documents abstracted from business requirements, establish a data model and describe the composition of business documents (a general business document is composed of a master table and multiple slave tables). specific:
选择一个业务单据主表对应的数据对象作为数据模型的主对象。 Select a data object corresponding to the main table of the business document as the main object of the data model.
若该业务单据有从表,则在数据模型的主对象下选择各子表对应的数据对象作为数据模型的子对象。并指定子对象和主对象的关联(从表中的主表标识字段和主表标识的关联)。 If the business document has sub-tables, select the data objects corresponding to each sub-table under the main object of the data model as the sub-objects of the data model. And specify the association between the sub-object and the main object (the association between the main table identification field in the slave table and the main table identification).
分别指定主对象和子对象的主键字段、编码字段,若有数据分级信息,则需启用分级选项,指定相应的分级信息。 Specify the primary key field and code field of the main object and sub-object respectively. If there is data classification information, you need to enable the classification option and specify the corresponding classification information.
分别指定主对象和子对象字段的相关属性: Specify the relevant properties of the main object and sub-object fields separately:
■字段基本属性,如字段名、字段标签、字段描述、字段类型等。■Basic properties of fields, such as field name, field label, field description, field type, etc.
若字段是外键,则指定字段的类型为“关联”,并指定其关联的“数据模型”,定义关If the field is a foreign key, specify the type of the field as "association", and specify its associated "data model", define the relation
■联的相关信息。■ link related information.
■可为字段指定取值域枚举。■A value domain enumeration can be specified for a field.
■为字段指定其用途(卡片、列表、打印等)。■ Assign fields their purpose (card, list, print, etc.).
此外,可为主、子对象指定各种约束(数据删除外键检查、唯一性检查等)。 In addition, various constraints (data deletion foreign key checks, uniqueness checks, etc.) can be specified for master and child objects.
4.2运行时4.2 Runtime
如附图2所示,运行时由“数据访问引擎”接收外部的增、删、改、查请求,完成相应的XML数据和关系数据的映射和转换。对“数据访问引擎”请求可分为两类,一类是数据获取,即从关系数据库获取关系数据,并将结果转换为XML数据;另一类数据输入,即输入XML数据,将其转换为关系数据,将输入同步(插入、更新)到数据库。As shown in Figure 2, the "data access engine" receives external add, delete, modify, and search requests during runtime, and completes the mapping and conversion of corresponding XML data and relational data. Requests to the "data access engine" can be divided into two categories, one is data acquisition, that is, obtaining relational data from a relational database, and converting the result into XML data; the other is data input, that is, inputting XML data and converting it into Relational data, to synchronize (insert, update) input to the database.
(一)数据获取,根据输入的“数据模型”标识,查询的条件,由“数据访问引擎”根据相应“数据模型”、“数据对象”的描述,动态形成查询关系数据库的SQL,获取数据结果集,然后根据相应的“数据模型”结构,构造为XML数据并返回。(1) Data acquisition, according to the input "data model" identification and query conditions, the "data access engine" dynamically forms SQL for querying the relational database according to the description of the corresponding "data model" and "data object", and obtains data results Set, and then according to the corresponding "data model" structure, constructed as XML data and returned.
(二)数据输入,根据输入的“数据模型”标识和XML,由“数据访问引擎”动态构造为关系数据结果集,并根据相应“数据模型”、“数据对象”的描述,动态形成关系数据库的插入、更新、删除SQL,执行SQL,完成请求。在执行多条影响数据库状态的SQL时,“数据访问引擎”会自动启动数据库事务。(2) Data input, according to the input "data model" identification and XML, the "data access engine" dynamically constructs a relational data result set, and according to the description of the corresponding "data model" and "data object", dynamically forms a relational database Insert, update, delete SQL, execute SQL, and complete the request. When executing multiple SQLs that affect the state of the database, the "data access engine" will automatically start the database transaction.
这样,通过运行时的建模和运行时的解析执行,完成了XML数据和关系数据库数据之间的映射和转换。In this way, the mapping and conversion between XML data and relational database data is completed through runtime modeling and runtime parsing.
5、实施例:5. Embodiment:
本发明已经成功运用于浪潮GSP应用开发平台,其架构如附图3所示。系统设计人员通过图形化的数据对象、数据模型设计器描述业务数据的模型,并将“数据模型”应用到平台需要做关系数据库持久化的各个模块。这些模块使用的是XML数据,通过对数据访问引擎的调用,完成XML数据对关系数据库的存取操作。The present invention has been successfully applied to the Inspur GSP application development platform, and its architecture is shown in Figure 3. System designers describe the model of business data through graphical data objects and data model designers, and apply the "data model" to each module of the platform that requires relational database persistence. These modules use XML data, and complete the access operation of XML data to the relational database by calling the data access engine.
XML格式数据和关系数据之间的映射和转换技术,有效的封装了对关系数据库的存取访问,屏蔽了底层数据库由于数据库的种类、版本等差异造成的开发复杂度,提供了一种标准的XML数据访问和传输格式,使得开发者不用编写任何代码即可实现持久化层存取访问的功能,从而非常有效的降低了软件系统持久化层的开发难度、开发风险。此外,这种方法使得业务数据的结构调整变得简单,当数据库结构和业务单据结构发生调整时,通过图形化的数据对象、数据模型设计器进行调整,不需要进行编译和物理发布,即可完成调整工作。有效的降低了软件系统实施和维护过程中的成本和风险以及软件厂商的开发、实施成本。使软件系统能够快速适应用户的个性化需求,满足用户不断发展和完善信息系统的长期目标。The mapping and conversion technology between XML format data and relational data effectively encapsulates the access to relational databases, shields the development complexity of underlying databases due to differences in database types and versions, and provides a standard The XML data access and transmission format enables developers to realize the access function of the persistence layer without writing any code, thus effectively reducing the development difficulty and risk of the persistence layer of the software system. In addition, this method simplifies the structural adjustment of business data. When the database structure and business document structure are adjusted, adjustments can be made through graphical data objects and data model designers without compilation and physical release. Complete the adjustment work. It effectively reduces the cost and risk in the process of software system implementation and maintenance, as well as the development and implementation costs of software manufacturers. Enable the software system to quickly adapt to the individual needs of users and meet the long-term goals of users' continuous development and improvement of information systems.
Claims (1)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CNB2007100157262A CN100458793C (en) | 2007-05-10 | 2007-05-10 | Mapping conversion method between data access level Xml format data and relational data |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CNB2007100157262A CN100458793C (en) | 2007-05-10 | 2007-05-10 | Mapping conversion method between data access level Xml format data and relational data |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN101067814A CN101067814A (en) | 2007-11-07 |
| CN100458793C true CN100458793C (en) | 2009-02-04 |
Family
ID=38880376
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CNB2007100157262A Expired - Fee Related CN100458793C (en) | 2007-05-10 | 2007-05-10 | Mapping conversion method between data access level Xml format data and relational data |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN100458793C (en) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101901265A (en) * | 2010-07-29 | 2010-12-01 | 中国运载火箭技术研究院 | A virtual test data object management system |
| CN101930464A (en) * | 2010-08-25 | 2010-12-29 | 华南理工大学 | A loose heterogeneous data exchange system and method for RFID logistics applications |
| CN107577467A (en) * | 2017-10-20 | 2018-01-12 | 郑州云海信息技术有限公司 | A kind of java implementation methods of TOSCA specifications |
| CN108463781A (en) * | 2016-01-13 | 2018-08-28 | 罗伯特·博世有限公司 | Method and system for information transmission |
Families Citing this family (108)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101436185B (en) * | 2007-11-12 | 2012-02-01 | 北大方正集团有限公司 | A Method of Using XML Memory Tree to Realize the Compatibility of Multiple Files |
| CN101464864B (en) * | 2007-12-18 | 2012-05-23 | 新奥特(北京)视频技术有限公司 | Method for indexing and querying media material by using relational database |
| CN101634942A (en) * | 2008-07-24 | 2010-01-27 | 北大方正集团有限公司 | Method and system for dynamically creating data tables |
| EP2161667A1 (en) * | 2008-09-08 | 2010-03-10 | Thomson Licensing, Inc. | Method and device for encoding elements |
| CN101458851B (en) * | 2008-12-23 | 2010-06-23 | 浪潮齐鲁软件产业有限公司 | Customizing method for wide invoice simulation template in tax control system |
| CN101963963A (en) * | 2009-07-23 | 2011-02-02 | 北京数码大方科技有限公司 | Method for constructing database meta-model |
| CN101739436B (en) * | 2009-09-28 | 2012-12-19 | 浙江工商大学 | XML-based flexible data migration method |
| CN102081630A (en) * | 2009-12-01 | 2011-06-01 | 富志杰 | A data classification, storage and query method |
| JP5451411B2 (en) | 2010-01-14 | 2014-03-26 | キヤノン株式会社 | Information processing apparatus, control method for information processing apparatus, and program |
| CN101840430B (en) * | 2010-04-28 | 2012-02-29 | 北京握奇数据系统有限公司 | Intelligent card database multi-list operation method and device |
| CN101887452A (en) * | 2010-06-30 | 2010-11-17 | 山东中创软件工程股份有限公司 | Data dictionary maintenance method and device thereof |
| CN102456051A (en) * | 2010-10-27 | 2012-05-16 | 北京大学 | Method and device for importing/exporting data of database |
| US8516011B2 (en) * | 2010-10-28 | 2013-08-20 | Microsoft Corporation | Generating data models |
| CN101980213B (en) * | 2010-11-23 | 2012-09-19 | 中国科学院软件研究所 | A J2EE-based data persistence method and system |
| CN102053841B (en) * | 2011-01-06 | 2013-07-31 | 国电南京自动化股份有限公司 | Embedded active memory object database design method |
| CN102081656A (en) * | 2011-01-12 | 2011-06-01 | 江苏梦兰神彩科技发展有限公司 | Data acquisition and distribution system of cross-platform heterogeneous database |
| CN102081661A (en) * | 2011-01-19 | 2011-06-01 | 吉林大学 | Data integration method and system of heterogeneous relational database based on XML (Extensive Makeup Language) |
| US9069830B2 (en) | 2011-03-29 | 2015-06-30 | International Business Machines Corporation | Retrieving data objects |
| CN102867001B (en) * | 2011-07-05 | 2019-12-24 | 腾讯科技(北京)有限公司 | Method and device for acquiring information |
| CN102254022B (en) * | 2011-07-27 | 2013-03-06 | 河海大学 | Method for sharing metadata of information resources of various data types |
| CN102411598B (en) * | 2011-07-29 | 2013-07-31 | 株洲南车时代电气股份有限公司 | Method and system for realizing data consistency |
| CN102982010B (en) * | 2011-09-02 | 2016-06-22 | 北大方正集团有限公司 | The method and apparatus extracting file structure |
| CN102346774B (en) * | 2011-09-26 | 2013-09-18 | 深圳市信游天下网络科技有限公司 | Database operation method |
| CN103092874A (en) * | 2011-11-01 | 2013-05-08 | 镇江华扬信息科技有限公司 | XML (Extensive Makeup Language) based isomerous data exchange method |
| CN102567508B (en) * | 2011-12-20 | 2014-05-14 | 南京大学 | Mass raster data format conversion parallel method based on abstract data model |
| CN103246649A (en) * | 2012-02-02 | 2013-08-14 | 中国航空工业集团公司沈阳飞机设计研究所 | Dynamic database building method |
| CN102622436A (en) * | 2012-02-29 | 2012-08-01 | 浙江吉利汽车研究院有限公司 | Data table establishing method of human resource management system |
| CN102662997B (en) * | 2012-03-15 | 2015-09-16 | 播思通讯技术(北京)有限公司 | A kind of storing X ML data are to the method for relational database |
| CN102750358B (en) * | 2012-06-12 | 2014-03-12 | 中国电力科学研究院 | Mapping method and system of system data model to common information model (CIM) |
| CN102819609B (en) * | 2012-08-23 | 2016-06-08 | 国电南京自动化股份有限公司 | A kind of perdurable data model modelling approach |
| US9053161B2 (en) * | 2012-08-30 | 2015-06-09 | International Business Machines Corporation | Database table format conversion based on user data access patterns in a networked computing environment |
| CN103714068B (en) * | 2012-09-29 | 2017-11-17 | 金蝶软件(中国)有限公司 | The method and device of instant data renewal |
| CN102929664A (en) * | 2012-10-16 | 2013-02-13 | 南京通达海信息技术有限公司 | Conventional data exchange method based on XSD structure |
| CN103020115A (en) * | 2012-11-13 | 2013-04-03 | 深圳市同洲电子股份有限公司 | Data caching method, cache server and system |
| CN103853714B (en) * | 2012-11-28 | 2017-06-20 | 中国移动通信集团河南有限公司 | A kind of data processing method and device |
| CN103279509B (en) * | 2013-05-17 | 2016-05-25 | 北京首钢自动化信息技术有限公司 | A kind of method for quickly querying that adopts dynamic queries language |
| CN103246753A (en) * | 2013-05-30 | 2013-08-14 | 安徽皖通科技股份有限公司 | Method for generating entity metadata model according to database structure |
| CN103425779A (en) * | 2013-08-19 | 2013-12-04 | 曙光信息产业股份有限公司 | Data processing method and data processing device |
| CN103488534A (en) * | 2013-09-23 | 2014-01-01 | 浪潮集团山东通用软件有限公司 | Method for enabling business logic layer to feed back control information to presentation layer |
| CN103593457B (en) * | 2013-11-22 | 2017-02-08 | 北大医疗信息技术有限公司 | Method for converting document format |
| CN103810281A (en) * | 2014-02-20 | 2014-05-21 | 浪潮集团有限公司 | Method for achieving data synchronization through timing task based on cloud computing |
| CN104932870B (en) * | 2014-03-18 | 2019-05-24 | 腾讯科技(深圳)有限公司 | A kind of data processing method and device to illusory script |
| CN104050264A (en) * | 2014-06-19 | 2014-09-17 | 华为技术有限公司 | Method and device for generating SQL statement |
| CN104133890B (en) * | 2014-07-30 | 2016-02-10 | 四川中亚联邦科技有限公司 | A kind of large data processing method in high in the clouds and system |
| CN104166705A (en) * | 2014-08-06 | 2014-11-26 | 广州华多网络科技有限公司 | Access method and device of database |
| CN104317916A (en) * | 2014-10-28 | 2015-01-28 | 用友优普信息技术有限公司 | Device and method for expanding business receipts of data association unit |
| CN104376103B (en) * | 2014-11-26 | 2017-10-03 | 浪潮电子信息产业股份有限公司 | A kind of multiple HBase table correlating methods based on snowflake model |
| CN104598592A (en) * | 2015-01-20 | 2015-05-06 | 北京仿真中心 | XML (Extensive Markup Language)-based database custom method and system |
| CN104679909B (en) * | 2015-03-25 | 2018-07-17 | 郑州悉知信息科技股份有限公司 | A kind of method and device of setting website TDK |
| CN104881747A (en) * | 2015-06-01 | 2015-09-02 | 北京圆通慧达管理软件开发有限公司 | Data collaboration method and data collaboration system |
| CN105159920A (en) * | 2015-07-28 | 2015-12-16 | 卡斯柯信号有限公司 | Attribute tag based database access method |
| CN105045912A (en) * | 2015-08-13 | 2015-11-11 | 浪潮通用软件有限公司 | Relational database data distribution method |
| EP3365832B1 (en) * | 2015-10-23 | 2021-11-03 | Oracle International Corporation | Self describing configuration with support for sharing data tables |
| CN106708891A (en) * | 2015-11-17 | 2017-05-24 | 中兴通讯股份有限公司 | Network management data synchronizing method and device |
| CN105488117A (en) * | 2015-11-23 | 2016-04-13 | 浪潮集团有限公司 | User-defined object processing method and apparatus |
| CN106919615A (en) * | 2015-12-28 | 2017-07-04 | 航天信息股份有限公司 | Data access method and system |
| CN105843605B (en) * | 2016-03-17 | 2019-03-08 | 中国银行股份有限公司 | A kind of data mapping method and device |
| CN105913198A (en) * | 2016-05-11 | 2016-08-31 | 邓意麒 | Physical entity class model construction module used for intelligent port, intelligent port and intelligent network |
| CN106022944B (en) * | 2016-05-27 | 2020-03-10 | 中国石油天然气股份有限公司 | Data volume conversion method and device for conventional and streamline models in numerical reservoir simulation |
| CN110222237B (en) * | 2016-06-06 | 2021-01-19 | 福建榕基软件股份有限公司 | Method and system for converting database table and XML message |
| CN106570095B (en) * | 2016-10-31 | 2020-01-07 | 凯美瑞德(苏州)信息科技股份有限公司 | XML data operation method and equipment |
| CN108121739B (en) * | 2016-11-30 | 2022-07-19 | 株式会社日立制作所 | Data collection method and data collection system |
| CN106844323A (en) * | 2017-02-20 | 2017-06-13 | 济南浪潮高新科技投资发展有限公司 | A kind of entity construction method and device |
| CN106886592A (en) * | 2017-02-21 | 2017-06-23 | 北京航空航天大学 | A kind of city space-time data collecting system and method based on data source service |
| CN106909689A (en) * | 2017-03-07 | 2017-06-30 | 山东浪潮云服务信息科技有限公司 | A kind of data fusion method and device |
| CN107092587A (en) * | 2017-05-02 | 2017-08-25 | 山东浪潮通软信息科技有限公司 | A kind of business voucher generation method and device |
| CN108804480A (en) * | 2017-05-05 | 2018-11-13 | 天津中铁电气化设计研究院有限公司 | A kind of analyzing platform and design method of novel dynamic generation data operation commands |
| CN107908640A (en) * | 2017-09-27 | 2018-04-13 | 国网浙江省电力公司杭州供电公司 | A kind of Business Entity relation Intelligent exploration engine implementing method |
| CN107657036A (en) * | 2017-09-29 | 2018-02-02 | 北京酷我科技有限公司 | A kind of production method of database object placement model |
| CN107577812A (en) * | 2017-09-29 | 2018-01-12 | 北京酷我科技有限公司 | A kind of method for quickly reading of entity data bak |
| CN107657038B (en) * | 2017-09-29 | 2021-06-08 | 北京酷我科技有限公司 | Database quick reading method |
| CN107832395A (en) * | 2017-10-30 | 2018-03-23 | 山东浪潮通软信息科技有限公司 | A kind of data processing method, device, computer-readable recording medium and storage control |
| CN107992292A (en) * | 2017-11-29 | 2018-05-04 | 商派软件有限公司 | A kind of method defined by schema forms progress database |
| CN110019969B (en) * | 2017-12-05 | 2021-06-29 | 北京京东尚科信息技术有限公司 | Method and system for processing semi-structured data |
| CN108170759B (en) * | 2017-12-22 | 2020-10-23 | 平安养老保险股份有限公司 | Complaint case processing method and device, computer equipment and storage medium |
| CN108038222B (en) * | 2017-12-22 | 2022-01-11 | 冶金自动化研究设计院 | System of entity-attribute framework for information system modeling and data access |
| CN110019555B (en) * | 2017-12-26 | 2023-08-25 | 中国科学院沈阳自动化研究所 | Relation data semantical modeling method |
| CN108874944B (en) * | 2018-06-04 | 2022-06-03 | 刘洋 | XSL language transformation-based heterogeneous data mapping system and method |
| CN108875038A (en) * | 2018-06-27 | 2018-11-23 | 南京南瑞继保电气有限公司 | The method and system of hierarchical structure real-time data base are attached under relational database data |
| CN108984712B (en) * | 2018-07-06 | 2022-04-26 | 深圳前海微众银行股份有限公司 | Service scene-based number making method and device and readable storage medium |
| CN108897897B (en) * | 2018-07-24 | 2021-01-05 | 艾普阳科技(深圳)有限公司 | Data processing method and device |
| CN109471957B (en) * | 2018-09-19 | 2020-08-04 | 北京悦图数据科技发展有限公司 | Metadata conversion method and device based on uniform tags |
| CN109377159A (en) * | 2018-09-19 | 2019-02-22 | 成都信息工程大学 | A software modeling process entity evolution system and method, processor and terminal |
| CN109446380A (en) * | 2018-11-02 | 2019-03-08 | 鲁班(北京)电子商务科技有限公司 | A method of two tables of data relationships are described based on XML |
| CN109582647B (en) * | 2018-11-21 | 2022-09-30 | 珠海市新德汇信息技术有限公司 | Unstructured evidence file oriented analysis method and system |
| CN111209319B (en) * | 2018-11-21 | 2022-03-29 | 华为云计算技术有限公司 | Data service method and device |
| CN109660638A (en) * | 2018-12-10 | 2019-04-19 | 中共中央办公厅电子科技学院 | A kind of data store organisation and DNS data storage system |
| CN109684329B (en) * | 2018-12-13 | 2021-04-23 | 高新兴科技集团股份有限公司 | Resource management method based on data center equipment |
| CN109656928B (en) * | 2018-12-24 | 2020-09-01 | 成都四方伟业软件股份有限公司 | Method and device for obtaining relationships between tables |
| CN109815242B (en) * | 2019-02-02 | 2021-04-02 | 中国农业银行股份有限公司 | Data processing method and system |
| CN109918084B (en) * | 2019-03-12 | 2022-03-15 | 浪潮通用软件有限公司 | Data mapping method of service management system |
| CN110399419B (en) * | 2019-07-30 | 2023-03-24 | 上海金融期货信息技术有限公司 | Relational template memory database system |
| CN110737642B (en) * | 2019-09-05 | 2022-09-02 | 平安科技(深圳)有限公司 | Database information analysis method, database information analysis device, computer device and storage medium |
| CN112749157A (en) * | 2019-10-30 | 2021-05-04 | 北京国双科技有限公司 | Data table processing method and device, storage medium and equipment |
| CN111143449B (en) * | 2019-12-12 | 2023-05-30 | 北京中电普华信息技术有限公司 | Data service method and device based on unified data model |
| CN111443970B (en) * | 2020-03-24 | 2023-11-03 | 浪潮通用软件有限公司 | Method, device, equipment and readable medium for assembling multi-source data |
| CN111427867B (en) * | 2020-03-30 | 2023-10-20 | 杭州华望系统科技有限公司 | Model persistence method based on hybrid storage |
| CN112732833B (en) * | 2021-01-08 | 2024-07-02 | 西安交通大学 | Universal data bridge architecture for acquiring blockchain information and design method |
| CN112860899B (en) * | 2021-03-16 | 2021-11-16 | 中化现代农业有限公司 | Label generation method and device, computer equipment and computer readable storage medium |
| CN113051650B (en) * | 2021-04-01 | 2021-10-15 | 中铁成都科学技术研究院有限公司 | Real-time acquisition method and device for building information model component data |
| CN113377871B (en) * | 2021-06-22 | 2024-03-22 | 特赞(上海)信息科技有限公司 | Data synchronization method, device and storage medium |
| CN113535844B (en) * | 2021-09-15 | 2021-12-07 | 山东耕元数据科技有限公司 | Data aggregation method and system |
| CN114416858B (en) * | 2021-12-28 | 2025-03-04 | 北京达美盛软件股份有限公司 | A data map generating device and a trajectory recording method thereof |
| CN114297330B (en) * | 2021-12-28 | 2024-07-30 | 北京达美盛软件股份有限公司 | Data map generation method and device |
| CN114792145B (en) * | 2022-05-27 | 2023-04-18 | 中国标准化研究院 | Standard digital management maintenance system and method based on knowledge graph |
| CN115544180A (en) * | 2022-10-20 | 2022-12-30 | 恩核(北京)信息技术有限公司 | Method and device for generating Barker representation E-R model |
| CN116302091A (en) * | 2022-12-06 | 2023-06-23 | 中汽创智科技有限公司 | Migration code processing method and device, electronic equipment and storage medium |
| CN117170908B (en) * | 2023-09-19 | 2025-08-12 | 中国铁道科学研究院集团有限公司通信信号研究所 | Data exchange method, system and device based on heterogeneous data of network system |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2003030031A2 (en) * | 2001-09-28 | 2003-04-10 | Oracle International Corporation | Mechanism for mapping xml schemas to object-relational database systems |
| US6732095B1 (en) * | 2001-04-13 | 2004-05-04 | Siebel Systems, Inc. | Method and apparatus for mapping between XML and relational representations |
| CN1760871A (en) * | 2004-10-15 | 2006-04-19 | 微软公司 | Mapping of schema data into data structures |
| CN1815468A (en) * | 2005-01-31 | 2006-08-09 | 微软公司 | Integration of a non-relational query language with a relational data store |
| CN1825306A (en) * | 2005-10-31 | 2006-08-30 | 北京神舟航天软件技术有限公司 | XML data storage and access method based on relational database |
-
2007
- 2007-05-10 CN CNB2007100157262A patent/CN100458793C/en not_active Expired - Fee Related
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6732095B1 (en) * | 2001-04-13 | 2004-05-04 | Siebel Systems, Inc. | Method and apparatus for mapping between XML and relational representations |
| WO2003030031A2 (en) * | 2001-09-28 | 2003-04-10 | Oracle International Corporation | Mechanism for mapping xml schemas to object-relational database systems |
| CN1760871A (en) * | 2004-10-15 | 2006-04-19 | 微软公司 | Mapping of schema data into data structures |
| CN1815468A (en) * | 2005-01-31 | 2006-08-09 | 微软公司 | Integration of a non-relational query language with a relational data store |
| CN1825306A (en) * | 2005-10-31 | 2006-08-30 | 北京神舟航天软件技术有限公司 | XML data storage and access method based on relational database |
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101901265A (en) * | 2010-07-29 | 2010-12-01 | 中国运载火箭技术研究院 | A virtual test data object management system |
| CN101901265B (en) * | 2010-07-29 | 2012-06-13 | 中国运载火箭技术研究院 | Objectification management system of virtual test data |
| CN101930464A (en) * | 2010-08-25 | 2010-12-29 | 华南理工大学 | A loose heterogeneous data exchange system and method for RFID logistics applications |
| CN101930464B (en) * | 2010-08-25 | 2012-08-08 | 华南理工大学 | RFID logistics application-orientated loose heterogeneous data exchange system and method |
| CN108463781A (en) * | 2016-01-13 | 2018-08-28 | 罗伯特·博世有限公司 | Method and system for information transmission |
| CN107577467A (en) * | 2017-10-20 | 2018-01-12 | 郑州云海信息技术有限公司 | A kind of java implementation methods of TOSCA specifications |
Also Published As
| Publication number | Publication date |
|---|---|
| CN101067814A (en) | 2007-11-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN100458793C (en) | Mapping conversion method between data access level Xml format data and relational data | |
| US8392464B2 (en) | Easily queriable software repositories | |
| US7644066B2 (en) | Techniques of efficient XML meta-data query using XML table index | |
| US7676493B2 (en) | Incremental approach to an object-relational solution | |
| US20040260715A1 (en) | Object mapping across multiple different data stores | |
| US11561976B1 (en) | System and method for facilitating metadata identification and import | |
| US8037039B2 (en) | Runtime class database operation | |
| Heidenreich et al. | A framework for generating query language code from OCL invariants | |
| KR20060095452A (en) | Methods and systems that provide common data access across disparate applications | |
| JP2009530735A (en) | Extended query language that supports rich data types | |
| KR20060045622A (en) | Extraction, transformation, and loading designer module of computerized financial systems | |
| EP2743838B1 (en) | Advanced Business Query Language | |
| CN1987853A (en) | Searching method for relational data base and full text searching combination | |
| EP4155964A1 (en) | Centralized metadata repository with relevancy identifiers | |
| CN103246704A (en) | Mapping method for describing entity and relational data based on conventional data structure | |
| Blakeley et al. | The ado. net entity framework: Making the conceptual level real | |
| US20060010106A1 (en) | SMO scripting optimization | |
| Jennings | Professional ADO. NET 3.5 with LINQ and the Entity Framework | |
| US11940951B2 (en) | Identification and import of metadata for extensions to database artefacts | |
| CN101241503A (en) | Database personalized method | |
| Zhang et al. | Clock: Synchronizing internal relational storage with external xml documents | |
| EP4170516A1 (en) | Metadata elements with persistent identifiers | |
| Salas et al. | Stdtrip: Promoting the reuse of standard vocabularies in open government data | |
| Fengguang et al. | Research and implementation of heterogeneous data integration based on XML | |
| Mork et al. | Teaching a schema translator to produce O/R views |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| C14 | Grant of patent or utility model | ||
| GR01 | Patent grant | ||
| 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: 20090204 Termination date: 20160510 |