IP Library Granted Patent US 7,124,140
Granted Patent B2
US 7,124,140 · App. 10/014,038 · Granted Oct 17, 2006

Database system having heterogeneous object types

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,124,140
App. No.
10/014,038
Granted
Oct 17, 2006
Kind
B2
Abstract

A method for extracting metadata for plural related objects of different types from a database includes defining a heterogeneous object type as a collection of database objects of different types. Upon a request to fetch a particular heterogeneous object, member objects of the heterogeneous object are fetched from the particular heterogeneous object in a specific order based on the definition of the heterogeneous object's type, such as a valid order for re-creating the particular heterogeneous object. The set of member objects to be fetched can be restricted according to at least one specified filter, which itself may be translated into a second filter according to a type of a member object being fetched. Such translated filters can inherit values from the filter specified in the request for the particular heterogeneous object type, or can have a fixed value of some data type. The extracted metadata can be formatted to recreate the particular heterogeneous object.

Claims (88)

1. A method for extracting metadata for plural related objects of different types from a database, comprising:

defining a heterogeneous object type as a collection of database objects of different types;

upon a single object type request to fetch a particular heterogeneous object, fetching metadata of member objects from the particular heterogeneous object in a specific order based on the definition of the heterogeneous objects type, the specific order being a valid order for recreating the particular heterogeneous object;

restricting a set of member objects to be fetched according to at least one specified filter;

wherein the at least one specified filter is translated to a second filter according to a type of a member object being fetched; and

storing the metadata from the fetched objects in a file.

2. The method of claim 1 , wherein a heterogeneous object type is a table export type.

3. The method of claim 1 , wherein an heterogeneous object type is a database export type.

4. The method of claim 1 , wherein an heterogeneous object type is a schema export type.

5. The method of claim 1 , wherein an heterogeneous object type is a tablespace export type.

6. The method of claim 1 , wherein a heterogeneous object type includes another heterogeneous object type.

7. The method of claim 1 , further comprising:

specifying, in a first table, heterogeneous object types;

defining, in a second table, the specific order in which member types for a given heterogeneous object type are to be returned; and

upon a fetch command, fetching member objects according to the specific order defined in the second table.

8. The method of claim 7 , further comprising:

specifying, in a third table, filters that can be applied to the particular heterogeneous object type.

9. The method of claim 8 , further comprising:

specifying, in a fourth table, filter translations for individual member object types.

10. The method of claim 9 , wherein a translated filter inherits a filter value from a filter specified for the particular heterogeneous object type.

11. The method of claim 9 , wherein a filter defined in the fourth table has a fixed text value.

12. The method of claim 9 , wherein a filter defined in the fourth table has a fixed boolean value.

13. The method of claim 1 , further comprising:

returning the metadata in a formatted markup language.

14. The method of claim 13 , wherein the formatted markup language is XML.

15. The method of claim 13 , further comprising:

translating the markup language-formatted data into statements formatted to recreate the particular heterogeneous object.

16. A method for retrieving, from a relational database, object metadata, comprising:

receiving a single request for metadata for a logical unit within the database, the logical unit comprising plural objects of different types;

extracting the requested metadata;

returning the extracted metadata in an order in which the logical unit can be recreated;

wherein the request specifies at least one heterogeneous object type filter, and restricting objects to be extracted based on the at least one heterogeneous object type filter;

translating the heterogeneous object type filter to a member object filter for a member object type;

restricting member objects of the member object type based on the member object filter; and

storing the extracted metadata in a file.

17. The method of claim 16 , wherein the logical unit comprises a table and its dependent objects.

18. The method of claim 17 , wherein a dependent object is a constraint.

19. The method of claim 17 , wherein a dependent object is an index.

20. The method of claim 17 , wherein a dependent object is a grant.

21. The method of claim 16 , wherein the logical unit comprises all objects in a schema.

22. The method of claim 16 , wherein the logical unit comprises all objects in the database.

23. The method of claim 16 , further comprising:

using the extracted metadata to recreate the logical unit of objects on another database.

24. The method of claim 16 , wherein the member object filter value is inherited from the heterogeneous object type filter.

25. The method of claim 16 , further comprising:

specifying the member object filter value as a fixed value.

26. The method of claim 25 , wherein the fixed value is a boolean value.

27. The method of claim 25 , wherein the fixed value is a text value.

28. The method of claim 16 , wherein the single request comprises a single OPEN command, a single CLOSE command, and at least one FETCH command.

29. A method for extracting metadata for plural related objects of different types from a database, comprising:

defining a heterogeneous object type as a collection of database objects of different types;

upon a request to fetch a particular heterogeneous object, fetching member objects from the particular heterogeneous object in a specific order based on the definition of the heterogeneous object's type;

restricting a set of member objects to be fetched according to at least one specified filter;

wherein the at least one specified filter is translated to a second filter according to a type of a member object being fetched; and

storing the metadata from the fetched objects in a file.

30. A method for extracting metadata for plural related objects of different types from a database, comprising:

defining a heterogeneous object type as a collection of database objects of different types;

upon a request to fetch a particular heterogeneous object, fetching member objects from the particular heterogeneous object in a specific order based on the definition of the heterogeneous object's type;

specifying, in a first table, the specific object types;

defining, in a second table, the specific order in which member types for a given heterogeneous object type are to be returned;

upon a fetch command, fetching member objects according to the specific order defined in the second table;

specifying, in a third table, filters that can be applied to the particular heterogeneous object type;

specifying, in a fourth table, filter translations for individual member object types; and

storing the metadata from the fetched objects in a file.

31. The method of claim 30 , wherein a translated filter inherits a filter value from a filter specified for the particular heterogeneous object type.

32. The method of claim 30 , wherein a filter defined in the fourth table has a fixed text value.

33. The method of claim 30 , wherein a filter defined in the fourth table has a fixed Boolean value.

34. A method for extracting metadata for plural related objects of different types from a database, comprising:

defining a heterogeneous object type as a collection of database objects of different types, the database objects including metadata;

upon a request to fetch a particular heterogeneous object, fetching member objects from the particular heterogeneous object in a specific order based on the definition of the heterogeneous object's type;

restricting a set of member objects to be fetched according to at least one specified filter;

wherein the at least one specified filter is translated to a second filter according to a type of a member object being fetched;

from the fetched member objects, returning the metadata in a formatted markup language; and

storing the metadata from the fetched objects in a file.

35. The method of claim 34 , wherein the formatted markup language is XML.

36. The method of claim 35 , further comprising: translating the markup language-formatted data into statements formatted to recreate the particular heterogeneous object.

37. A method for retrieving, from a relational database, object metadata, comprising:

receiving a single request for metadata for a logical unit within the database, the logical unit comprising plural objects of different types, the request specifying at least one heterogeneous object type filter;

restricting objects to be extracted based on the at least one heterogeneous object type filter;

translating the heterogeneous object type filter to a member object filter for a member type;

restricting member objects of the member object type based on the member object filter;

extracting the requested metadata;

returning the extracted metadata in an order in which the logical unit can be recreated; and

storing the extracted metadata in a file.

38. The method of claim 36 , wherein the member object filter value is inherited from the heterogeneous object type filter.

39. The method of claim 36 , further comprising specifying the member object filter value as a fixed value.

40. The method of claim 39 , wherein the fixed value is a boolean value.

41. The method of claim 39 , wherein the fixed value is a text value.