IP Library Granted Patent US 7,412,436
Granted Patent B2
US 7,412,436 · App. 10/199,490 · Granted Aug 12, 2008

System and interface for manipulating a database

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,412,436
App. No.
10/199,490
Granted
Aug 12, 2008
Kind
B2
Abstract

An interface exposes methods for use in manipulating a database. The interface receives requests in terms of entities (or objects).

Claims (15)

1. An application programming interface (API) that is embedded on a computer-readable storage medium and exposed by objects in an object model, the API having methods which, when invoked, cause a computer-implemented data accessing system implemented by objects in the object model to receive a request, expressed in terms of the object model and identifying a set of entities each having associated data, and to manipulate data in a relational database based on the request, and wherein the object model includes an object that exposes a portion of the API, having a method which, when invoked, returns only a specified part of the data associated with the identified set of entities.

2. The API of claim 1 wherein manipulating data comprises updating columns in a relational database.

3. The API of claim 1 wherein the data accessing system comprises a translator.

4. The API of claim 3 further comprising utilizing the translator to build a directed acyclic graph.

5. An application programming interface (API) that is embedded on a computer-readable storage medium and exposed by objects in an object model, the API having methods which, when invoked, cause a computer-implemented data accessing system implemented by objects in the object model to receive a request, expressed in terms of the object model, wherein the request identifies a set of entities each having associated data and a join identifier identifying how the set of entities is to be joined, and wherein the object model includes an object that exposes a portion of the API, having a method which, when invoked, generates a query against a relational database portion of the database wherein the entities are joined in the query based on the join identifier.

6. The API of claim 5 wherein the join identifier comprises a Boolean expression.

7. An application programming interface (API) that is embedded on a computer-readable storage medium and exposed by objects in an object model, the API having methods which, when invoked, cause a computer-implemented data accessing system implemented by objects in the object model to receive a request, expressed in terms of the object model, wherein the request identifies a set of entities each having associated data and an order identifier identifying how the set of entities is to be ordered when returned, and wherein the object model includes an object that exposes a portion of the API having a method which, when invoked, orders the entities returned from a relational database portion of the O-R database based on the order identifier.

8. The API of claim 7 wherein the set of entities are returned in ascending order.

9. The API of claim 7 wherein the set of entities are returned in descending order.

10. A computer-implemented data accessing system in a computer-implemented object-relational (O-R) database system, the data accessing system exposing an interface stored in a memory which, when invoked by a processor, causes the data accessing system to perform computer-implemented steps of:

receiving a request that identifies an entity and is expressed in terms of an object model; and

accessing the identified entity in the O-R database system based on the request, by accessing a map between the identified entity and

a relational database portion of the O-R database to locate data from the identified entity in the relational database portion;

locating the identified data;

returning the identified data organized based on an order identifier included in the request.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034541/0477 →