Method for exposing hierarchical table structures and relationships to OLE DB applications
First Claim
Patent Images
1. In a specialized Data Management System (DMSII) wherein a client application means (100) operates with a Data Access System (102) to communicate with a Database Server (104) operating under a Master Control Program (MCP) a system for enabling OLE DB applications to access normalized relational table structures from hierarchical formatted data in said Database Server (104) comprising the steps of:
- (a) client application means (100) utilizing OLE DB applications for initiating changes in data, accessed from said Database Server (104) holding hierarchical data;
(b) data access means (102) for communicating requests from said client application means (100) to said Database Server (104) including;
(b1) means for converting the native hierarchical format of data in said Database Server (104) into relational format suitable for OLE DB applications in said client application means (100);
(b2) OLE DB Data Provider Object means (20) connecting to said client application means (100) via an Application Program Interface (24) and communicating with a Data Provider Object (25) and transport Object (26), said Data Provider Object for interfacing OLE DB applications to and from a Worker Module (27) via said Transport Object (26) which enables communication between said Database Server (104) and said client application means (100);
(b3) said Objects (25, 26) connected to a Server Library (28) and Worker Module (27) for transmitting requests and data to and from said Database Server (104).
14 Assignments
0 Petitions
Accused Products
Abstract
A method and system is provided that enables OLE DB (Object Linking and Embedded Database) applications to access embedded table-structured relationships in hierarchical databases as Normalized relational tables.
-
Citations
7 Claims
-
1. In a specialized Data Management System (DMSII) wherein a client application means (100) operates with a Data Access System (102) to communicate with a Database Server (104) operating under a Master Control Program (MCP) a system for enabling OLE DB applications to access normalized relational table structures from hierarchical formatted data in said Database Server (104) comprising the steps of:
-
(a) client application means (100) utilizing OLE DB applications for initiating changes in data, accessed from said Database Server (104) holding hierarchical data; (b) data access means (102) for communicating requests from said client application means (100) to said Database Server (104) including; (b1) means for converting the native hierarchical format of data in said Database Server (104) into relational format suitable for OLE DB applications in said client application means (100); (b2) OLE DB Data Provider Object means (20) connecting to said client application means (100) via an Application Program Interface (24) and communicating with a Data Provider Object (25) and transport Object (26), said Data Provider Object for interfacing OLE DB applications to and from a Worker Module (27) via said Transport Object (26) which enables communication between said Database Server (104) and said client application means (100); (b3) said Objects (25, 26) connected to a Server Library (28) and Worker Module (27) for transmitting requests and data to and from said Database Server (104).
-
-
2. In a specialized Data Management System (DMSII) wherein a client application platform (100) operates with a Data Access System (102) to communicate with a Database Server (104), said Database Server (104) holding hierarchical entities of data designated as embedded datasets, sets and indexes, and operating under a Master Control Program (MCP), a method for enabling OLE, DB applications to access normalized relational table structures compatible for OLE DB applications from hierarchical formatted data in said Database Server (104) comprising the steps of:
-
(a) using indexes of embedded datasets to create every combination of the sets of each dataset; (b) normalizing said embedded datasets into relational tables; (c) enabling said OLE DB application to access said embedded datasets as normalized relational tables, (d) providing accesses to said normalized relational tables for insertion of data, or deletion of data.
-
-
3. In a system wherein a client application (100) communicates with a database server (104) through an OLE DB Data Provider (20) to access a selected Row of data (rowsets) in said server (104), wherein said server (104) holds a hierarchical database with rowsets indexed to keys with columns that enable OLE DB components to manipulate data in tabular form and further holds a Master Record with a Master row of data, said hierarchical database holding embedded datasets on a parent-child relation designated as OLE DB chaptered rowsets, said server (104) connected via an OLE DB Data Provider (20) which utilizes a Data Provider Object (25) and Transport Object (26) for conveying commands to and from and a Worker Module (27) to communicate to said server (104). a method for inserting a row in a normalized relational data structure organized as a Table, comprising the steps of:
-
(a) querying to see if said rowset has a unique key which can be used to locate the proper Master record to provide an insertion sequence for a new row of data; (b) gathering all key columns for the row of said master record, said key columns providing a portion of a data record which contains the key data; (c) seeking to directly position data to a row in said master record correlated to said unique key; (d) fetching a selected row that will be affected by said insertion of data; (e) holding said fetched row while obtaining a child chapter which holds columns of data belonging to an embedded data set; (f) utilizing said Transport Object means (26) to initiate the update sequence for the selected Row; (g) checking to see if the insertion sequence has been completed; (h) temporarily storing said fetched row before delivery to a Worker module (27); (i) conveying said fetched row to said Worker module (27); (j) inserting said fetched row into said relational Table which is compatible for said OLE DB application.
-
-
4. In a system wherein a client application (100) communicates with a database server (104), holding bookmarks, said server working through an OLE DB Data Provider (20) to access a selected Row of data (Rowset) in a normalized relational table structure, wherein said server (104) holds a hierarchical database with rowsets that enable OLE DB components to manipulate data in tabular form and further holds a Master Record with a Master row of data, said hierarchical database holding embedded datasets on a parent-child relation designated as OLE DB chaptered rowsets, said server (104) connected via said OLE DB data provider (20) to enable utilization of a Transport Object means (26) for conveying commands and to utilize a Worker Module (27) to communicate to said server (104), a method for updating a selected Row of data comprising the steps of:
-
(a) utilizing a bookmark to fetch the Row to be affected by said update operation; (b) obtaining the child chapter record using the fetched row of the parent data set sitting in a hierarchical format where said child chapter provides columns of data belonging to an embedded data set; (c) determining if the child chapter record is not NULL, and if so; (d) utilizing said Transport Object means (26) to initiate an update sequence; (e) checking to see that the update sequence initiation is complete; and
if so,(f) temporarily storing said update sequence for delivery to said Worker module (27); (g) transmitting said update sequence to said Worker module (27); (h) completing said update sequence on said selected Row.
-
-
5. In a server means having a bookmark program and including a server database (104) holding hierarchical formatted data including a formatted dataset and a child chapter record which refers to the columns belonging to an embedded dataset, said server database (104) including a Transport Object (26) for communicating to a WorkerModule (27) which access hierarchical data from said server database (104) so that said Transport Object (26) can enable a Data Provider Object (25) to service said OLE DB client application (100), said server database further holding Rows of data in hierarchical format for conversion to relational format compatible for OLE DB client (100) applications in a normalized data structure of relational tables, a method for deleting a selected Row via a delete operation comprising the steps of:
-
(a) using a bookmark to fetch the a selected Row that will be affected by a delete operation; (b) obtaining the child chapter record of a hierarchically formatted dataset by using the fetched selected Row; (c) checking to see that said child chapter record is not NULL; and
if so,(d) initializing said delete operation in a Transport Object (26) which enables communication to said Worker module (27) and to said database server (104); (e) checking to see that said initialization is complete; and
if so,(f) storing said delete operation before delivery to said Worker module (27); (g) transmitting said delete operation to said Worker module (27) for updating access to said server database (104); (h) deleting the said selected Row.
-
-
6. In a specialized Data Management System (DMSII) wherein a client application platform (100) operates with a Data Access System (102) to communicate with a Database Server (104) operating under a Master Control Program (MCP), a system for enabling OLE DB applications to access normalized relational table structures showing rows of relational data from hierarchical formatted data in said Database Server (104) comprising:
-
(a) means for storing data in hierarchical structures in said Database Server (104); (b) means for enabling an OLE DB Data Provider (20) via a client-request, to request hierarchical data from said Database Server (104); (c) means for forwarding said client request via a Server Library (28) to a Worker Module (27) which will search and obtain the hierarchical data from said Database Server (104); (d) means for transporting said hierarchical data via a Transport Object (26) to a Data Provider Object (25); (e) means for converting said hierarchical data received from said Worker Module (27) into a OLE DB format using normalized relational format of data types recognizable by the said client application. - View Dependent Claims (7)
-
Specification