Object aggregation representation of relational database rows having nontraditional datatypes
First Claim
1. In a computer system having a database under control of a database management system which supports a traditional datatype and a nontraditional datatype, said database including a table with rows and columns, cells being defined by intersections of said rows and said columns, one of said rows having respective cells each with one of said traditional datatype and said nontraditional datatype, a data access method for an applications program to access a respective data value of each of said respective cells of said one of said rows, said method comprising:
- providing to said applications program an entity object representing said one of said rows;
for each of said respective cells that has said traditional datatype, said entity object providing said respective data value; and
for each of said respective cells that has said nontraditional datatype, providing to said entity object a corresponding extended data object which represents said each respective cell, said corresponding extended data object providing said respective data value.
1 Assignment
0 Petitions
Accused Products
Abstract
A program product is described in which a class library is provided to permit object oriented applications to access and to manipulate, in accordance with the object model, nontraditional data values of a relational table. Nontraditional datatypes of a relational table include multimedia and large object datatypes. The data is manipulable by virtue of extended data objects that each represent a cell of a relational row, and that each inherit type-specific behaviors from the class library. Special handling is provided for large objects.
-
Citations
31 Claims
-
1. In a computer system having a database under control of a database management system which supports a traditional datatype and a nontraditional datatype, said database including a table with rows and columns, cells being defined by intersections of said rows and said columns, one of said rows having respective cells each with one of said traditional datatype and said nontraditional datatype, a data access method for an applications program to access a respective data value of each of said respective cells of said one of said rows, said method comprising:
-
providing to said applications program an entity object representing said one of said rows; for each of said respective cells that has said traditional datatype, said entity object providing said respective data value; and for each of said respective cells that has said nontraditional datatype, providing to said entity object a corresponding extended data object which represents said each respective cell, said corresponding extended data object providing said respective data value. - View Dependent Claims (2)
-
-
3. A program product, comprising:
-
a class library, and a computer-readable medium bearing said class library; said class library including; a first class for constructing entity objects, each representing a respective row of a relational table and at least one traditional datatype cell of said row, and a second class for constructing extended data objects, each representing a nontraditional datatype cell of said row. - View Dependent Claims (4, 5)
-
-
6. A program product, comprising:
-
a class library, and a computer-readable medium bearing said class library; said class library including; a first class for constructing entity objects, each representing a respective row of a relational table and at least one traditional datatype cell of said row, a second class for constructing extended data objects, each representing a nontraditional datatype cell of said row, and third class based on said second class for constructing, as one of said extended data objects, a large object (LOB) extended data objects; said first class providing said each entity object with respective member functions for causing construction of one of said extended data objects for each said nontraditional datatype cell of said represented row; said second class providing said each extended data object with respective member functions for manipulating a data value of said nontraditional datatype cell; said LOB extended data object representing said nontraditional datatype cell of said represented row when said nontraditional datatype cell has a LOB nontraditional datatype, said relational table being controlled by a database management system at a server location, and said LOB extended data object having a client location; said third class defining member functions of said LOB extended data object, including a function for setting a LOB access mode of said LOB extended data object to a direct method, a function for setting said LOB access mode to an indirect method, and a function for performing a retrieval with respect to said selected cell; said member functions of said LOB extended data object being defined by said third class so that; when said direct method is set, said retrieval is performed by causing said database management system to provide to said LOB extended data object said LOB value so that manipulation of said LOB value may be performed at said client location; when said indirect method is set, said retrieval is performed by causing said database management system to provide to said LOB extended data object a LOB locator, said LOB locator being usable by said database management system so that manipulation of said LOB value may be performed at said server location. - View Dependent Claims (7, 8, 9, 10, 11)
-
-
12. A program product for use with a computer system in which relational tables of a relational database management system are accessed by an applications program, said program product comprising:
a computer usable medium bearing computer programming statements for causing said computer system to respond to an access request of said applications program for access to data cells of a row of one of said relational tables by providing (A) an entity object representing said row and having traditional type data values for each of said cells of a traditional datatype, and (B) for each of said data cells that has a nontraditional datatype, an extended data object representing said cell and having a respective nontraditional type data value. - View Dependent Claims (13)
-
14. A program product for use with a computer system in which relational tables of a relational database management system are accessed by an applications program, said program product comprising:
-
a computer usable medium bearing computer programming statements for causing said computer system to respond to an access request of said applications program for access of data cells of a row of one of said relational tables by providing (A) an entity object representing said row and having traditional type data values for each of said cells of a traditional datatype, and (B) for each of said data cells that has a nontraditional datatype, an extended data object representing said cell and having a respective nontraditional type data value, said computer programming statements including a class library with an entity object class and an extended data object class, said computer programming statements defining a data access facility that provides at least one object oriented access object to which said access request of said applications program is provided, and said data access facility responding to said access request by providing said entity object to said applications program. - View Dependent Claims (15)
-
-
16. A computer system, comprising:
-
a relational database management system with relational tables, a data access facility for interfacing with said relational database management system to provide access to said relational tables, and an applications program for accessing one of said relational tables using said data access facility; wherein said data access facility responds to an access request of said applications program for access to data cells of a row of one of said relational tables by providing; an entity object representing said row and having traditional type data values for each of said cells of a traditional datatype, and for each of said data cells that has a nontraditional datatype, an extended data object representing said cell and having a respective nontraditional type data value. - View Dependent Claims (17, 18)
-
-
19. A computer system, comprising:
-
a relational database management system with relational tables, a data access facility for interfacing with said relational database management system to provide access to said relational tables, an applications program for accessing one of said relational tables using said data access facility, and a class library with an entity object class and an extended data object class; wherein said data access facility responds to an access request of said applications program for access to data cells of a row of one of said relational tables by providing; an entity object representing said row and having traditional type data values for each of said cells of a traditional datatype, and for each of said data cells that has a nontraditional datatype, an extended data object representing said cell and having a respective nontraditional type data value; wherein said entity object is based on said entity object class; wherein said extended data object is based on said extended data object class; wherein said data access facility provides at least one object oriented access object to which said access request of said applications program is provided; wherein said data access facility responds to said access request by providing said entity object to said applications program; and wherein said entity object includes member functions for creating said extended data object, said extended data object being created from said class library on the basis of the particular nontraditional datatype of said cell so that said extended data object has a respective set of member functions for type-specific manipulation of said nontraditional type data value.
-
-
20. In a computer system having a database under control of a server-based database management system which supports traditional and nontraditional datatypes, including a large object (LOB) nontraditional datatype, said database including a table with rows and columns, cells being defined by intersections of said rows and said columns, said cells of a selected one of said rows including a cell of said LOB datatype, a data access method for a client-based applications program to access and manipulate a LOB value of said cell of said LOB datatype, said method comprising the steps of:
-
providing to said applications program, in response to a request therefrom, an entity object representing said selected row; providing to said entity object said respective data value for said respective cells of said selected row that have said traditional datatypes; providing to said entity object a respective extended data object for each of said respective cells of said selected row that have said nontraditional datatypes, each said respective extended data object representing a corresponding one of said respective cells that have said nontraditional datatypes; wherein when said corresponding cell is said cell of said LOB datatype, said respective extended data object thereof is a LOB extended data object having member functions including functions for; setting a LOB access mode of said LOB extended data object to a direct method, and setting said LOB access mode to an indirect method; wherein; when said direct method is set, said respective LOB extended data object of said cell of said LOB datatype responds to a retrieval request of said applications program by causing said database management system to provide to said LOB extended data object said LOB value, said manipulation of said LOB value occurring at said client by said LOB extended data object; when said indirect method is set, said LOB extended data object responds to said retrieval request by causing said database management system to provide a LOB locator usable by said database management system, said manipulation of said LOB value occurring at said server; said applications program accesses and manipulates said LOB value by sending a message to said LOB extended data object. - View Dependent Claims (21, 22, 23, 24, 25)
-
-
26. A computer system, comprising:
-
a database, including a table with rows and columns, cells being defined by intersections of said rows and said columns, a server-based database management system controlling said database and supporting traditional and nontraditional datatypes, including a large object (LOB) datatype, said cells of a selected one of said rows having a cell of said LOB datatype, a data access facility interfacing with said database management system, and a client-based applications program for accessing and manipulating a LOB value of said cell of said LOB datatype; said data access facility providing to said applications program, in response to a request therefrom, an entity object representing said selected row and providing to said entity object said respective data value for said respective cells of said selected row that have said traditional datatypes; said data access facility providing to said entity object a respective extended data object for each of said respective cells of said selected row that have said nontraditional datatypes, each said respective extended data object representing a corresponding one of said respective cells that have said nontraditional datatypes; wherein when said corresponding cell is said cell of said LOB datatype, said respective extended data object thereof is a LOB extended data object having member functions including functions for; setting a LOB access mode of said LOB extended data object to a direct method, and setting said LOB access mode to an indirect method; wherein; when said direct method is set, said respective LOB extended data object of said cell of said LOB datatype responds to a retrieval request of said applications program by causing said database management system to provide to said LOB extended data object said LOB value, said manipulation of said LOB value occurring at said client by said LOB extended data object; when said indirect method is set, said LOB extended data object responds to said retrieval request by causing said database management system to provide a LOB locator usable by said database management system, said manipulation of said LOB value occurring at said server; said applications program accesses and manipulates said LOB value by sending a message to said LOB extended data object. - View Dependent Claims (27, 28, 29, 30, 31)
-
Specification