Patent US5890160A successfully refreshed from Google Patents.
US5890160A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Object representation of relational database cells having nontraditional large object datatypes
Assignee: International Business Machines Corp
•
Filing: 1997-05-06
•
Granted: 1999-03-30
•
Expires: 2017-05-06
Abstract
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 and, in particular, large objects. 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 for large objects is provided so as to avoid undue burdens on performance.
Inventors
- 👤 Douglas M. Hembry
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-05 05:14
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/20; G06F16/28; G06F16/289; Y; Y10; Y10S; Y10S707/00; Y10S707/99941; Y10S707/99944
Claims Analysis
Total Claims: 21
Claim 1
Independent Claim
219 words
In a computer system having a database under control of a server-based database management system which supports a large object (LOB) 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 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, said method comprising the steps of: providing to said applications program an object representing said cell, said object having member functions including functions for: setting a LOB access mode of said object to a direct method, and setting said LOB access mode to an indirect method; wherein: when said direct method is set, said object responds to a retrieval request of said applications program by causing said database management system to provide to said object said LOB value, said manipulation of said LOB value occurring at said client by said object; when said indirect method is set, said 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 object.
Claim 2
Dependent Claim
219 words
In a computer system having a database under control of a server-based database management system which supports a large object (LOB) 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 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, said method comprising the steps of: providing to said applications program an object representing said cell, said object having member functions including functions for: setting a LOB access mode of said object to a direct method, and setting said LOB access mode to an indirect method; wherein: when said direct method is set, said object responds to a retrieval request of said applications program by causing said database management system to provide to said object said LOB value, said manipulation of said LOB value occurring at said client by said object; when said indirect method is set, said 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 object.
Claim 3
Dependent Claim
135 words
The data access method according to claim 1, wherein: said member functions of said object further include a function for setting said LOB access mode to an automatic method; when said automatic method is set, and said LOB value has a length that exceeds a predetermined threshold, said object responds to said retrieval request by causing said database management system to provide to said object said LOB value, said manipulation of said LOB value occurring at said client by said object; and when said automatic method is set, and said length of said LOB value does not exceed said predetermined threshold, said 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.
Claim 4
Dependent Claim
60 words
The data access method according to claim 2, wherein: said member functions of said object further include a comparing function for comparing said length of said LOB value with a threshold; said comparing function is invoked in response to said retrieval request; and said comparing function is invoked in response to a change in said length of said LOB value.
Claim 5
Dependent Claim
42 words
The data access method according to claim 3, wherein: said member functions of said object further include a binary LOB function; and when said binary LOB function is invoked, said object determines whether both operands of said binary LOB function are co-located.
Claim 6
Dependent Claim
40 words
The data access method according to claim 4, wherein when said operands are not co-located, said object causes one of said operands to be located with the other one of said operands prior to execution of said binary LOB function.
Claim 7
Dependent Claim
99 words
The data access method according to claim 3, wherein: setting said LOB access method to said indirect method is accomplished by adjusting said threshold of said comparing function to a value less than a smallest allowable value for said large object datatype; setting said LOB access method to said direct method is implemented by adjusting said threshold of said comparing function to a value greater than a greatest allowable value for said large object datatype; and setting said LOB access method to said automatic method is accomplished by adjusting said threshold of said comparing function to said predetermined threshold.
Claim 8
Dependent Claim
246 words
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 a large object (LOB) datatype, 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; said applications program providing to said data access facility an access request pertaining to said cell; said data access facility providing to said applications program, in response to said access request, an object representing said cell, said object having member functions including functions for setting a LOB access mode of said object to a direct method, and for setting said LOB access mode to an indirect method; wherein when said direct method is set, said object responds to a retrieval request of said applications program by causing said database management system to provide to said object said LOB value, said manipulation of said LOB value occurring at said client by said object; wherein when said indirect method is set, said 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; and wherein said applications program accesses and manipulates said LOB value by sending a message to said object.
Claim 9
Dependent Claim
246 words
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 a large object (LOB) datatype, 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; said applications program providing to said data access facility an access request pertaining to said cell; said data access facility providing to said applications program, in response to said access request, an object representing said cell, said object having member functions including functions for setting a LOB access mode of said object to a direct method, and for setting said LOB access mode to an indirect method; wherein when said direct method is set, said object responds to a retrieval request of said applications program by causing said database management system to provide to said object said LOB value, said manipulation of said LOB value occurring at said client by said object; wherein when said indirect method is set, said 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; and wherein said applications program accesses and manipulates said LOB value by sending a message to said object.
Claim 10
Dependent Claim
134 words
The computer system according to claim 7, wherein: said member functions of said object further include a function for setting said LOB access mode to an automatic method; when said automatic method is set, and said LOB value has a length that exceeds a predetermined threshold, said object responds to said retrieval request by causing said database management system to provide to said object said LOB value, said manipulation of said LOB value occurring at said client by said object; and when said automatic method is set, and said length of said LOB value does not exceed said predetermined threshold, said 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.
Claim 11
Dependent Claim
59 words
The computer system according to claim 8, wherein: said member functions of said object further include a comparing function for comparing said length of said LOB value with a threshold; said comparing function is invoked in response to said retrieval request; and said comparing function is invoked in response to a change in said length of said LOB value.
Claim 12
Dependent Claim
41 words
The computer system according to claim 9, wherein: said member functions of said object further include a binary LOB function; and when said binary LOB function is invoked, said object determines whether both operands of said binary LOB function are co-located.
Claim 13
Dependent Claim
39 words
The computer system according to claim 10, wherein when said operands are not co-located, said object causes one of said operands to be located with the other one of said operands prior to execution of said binary LOB function.
Claim 14
Dependent Claim
98 words
The computer system according to claim 9, wherein: setting said LOB access method to said indirect method is accomplished by adjusting said threshold of said comparing function to a value less than a smallest allowable value for said large object datatype; setting said LOB access method to said direct method is implemented by adjusting said threshold of said comparing function to a value greater than a greatest allowable value for said large object datatype; and setting said LOB access method to said automatic method is accomplished by adjusting said threshold of said comparing function to said predetermined threshold.
Claim 15
Dependent Claim
215 words
A program product, comprising: a class library, and a computer-readable medium bearing said class library; said class library including a particular class for constructing an object to represent a selected cell in a computer system having a relational database supporting a large object (LOB) datatype, said selected cell having said LOB datatype, said relational database having a server location and said object having a client location; said particular class defining member functions of said object, including a function for setting a LOB access mode of said 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 object being defined by said particular class so that: when said direct method is set, said retrieval is performed by causing said database management system to provide to said 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 object a LOB locator, said LOB locator being usable by said relational database so that manipulation of said LOB value may be performed at said server location.
Claim 16
Dependent Claim
215 words
A program product, comprising: a class library, and a computer-readable medium bearing said class library; said class library including a particular class for constructing an object to represent a selected cell in a computer system having a relational database supporting a large object (LOB) datatype, said selected cell having said LOB datatype, said relational database having a server location and said object having a client location; said particular class defining member functions of said object, including a function for setting a LOB access mode of said 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 object being defined by said particular class so that: when said direct method is set, said retrieval is performed by causing said database management system to provide to said 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 object a LOB locator, said LOB locator being usable by said relational database so that manipulation of said LOB value may be performed at said server location.
Claim 17
Dependent Claim
103 words
The program product according to claim 13, wherein: said particular class further defines said member functions of said object to include a function for setting said LOB access mode to an automatic method; said member functions of said object are defined by said particular class so that: when said automatic method is set, and said LOB value has a length that exceeds a predetermined threshold, said retrieval is performed according to said direct method; and when said automatic method is set, and said length of said LOB value does not exceed said predetermined threshold, said retrieval is performed according to said indirect method.
Claim 18
Dependent Claim
76 words
The program product according to claim 14, wherein: said particular class further defines said member functions of said object to include a comparing function for comparing said length of said LOB value with a threshold; said member functions of said object are defined by said particular class so that said comparing function is invoked when said function for performing a retrieval is invoked, and in response to a change in said length of said LOB value.
Claim 19
Dependent Claim
63 words
The program product according to claim 15, wherein: said particular class further defines said member functions of said object to include a binary LOB function having two operands; and said member functions of said object are defined by said particular class so that, when said binary LOB function is invoked, said object determines whether both operands of said binary LOB function are co-located.
Claim 20
Dependent Claim
53 words
The program product according to claim 16, wherein said member functions of said object are defined by said particular class so that, when said operands are not co-located, said object causes one of said operands to be located with the other one of said operands prior to execution of said binary LOB function.
Claim 21
Dependent Claim
112 words
The program product according to claim 15, wherein said member functions of said object are defined by said particular class so that,: setting said LOB access method to said indirect method is accomplished by adjusting said threshold of said comparing function to a value less than a smallest allowable value for said large object datatype; setting said LOB access method to said direct method is implemented by adjusting said threshold of said comparing function to a value greater than a greatest allowable value for said large object datatype; and setting said LOB access method to said automatic method is accomplished by adjusting said threshold of said comparing function to said predetermined threshold.
References Cited (Backward Citations)
US5291583A
Cited
US5758153A
Cited
US5778377A
Cited
US5649195A
Cited
US5742810A
Cited
US5794250A
Cited
US5787413A
Cited
US5802524A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2002-03-29 | 2002-09-28 | 2003-03-30 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2006-03-29 | 2006-09-28 | 2007-03-30 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2010-03-29 | 2010-09-28 | 2011-03-30 | $7700.00 | Window Closed / Lapsed |