Claims Analysis
Total Claims: 21
Claim 1
Independent Claim
240 words
In a development system for creating a program which includes programmatic access to columns of database tables, an improved method for determining an ordinal representing an offset within a database table of a column which has been referenced within a program by name, the method comprising: allocating memory for storing a plurality of reference cache entries, each cache entry storing a reference to a text string representing a name for a given column and further storing an ordinal for the given column; upon a request for an ordinal of a particular column, said request including the text string which represents the name for the particular column, (i) attempting to determine the ordinal by examining the reference cache for an entry storing a reference which matches a corresponding reference to a text string representing the name for the particular column; (ii) if the reference cache has no such entry, (1) determining the ordinal based, at least in part, on comparison of the text string representing the name for the particular column, and (2) updating the reference cache by storing a cache entry having a reference to the text string and the ordinal for the particular column, so that subsequent requests for the ordinal of the particular column can be satisfied based on examination of the reference cache; and (iii) providing the determined ordinal for the particular column, so that the program has programmatic access to information stored at the particular column.
Claim 2
Dependent Claim
240 words
In a development system for creating a program which includes programmatic access to columns of database tables, an improved method for determining an ordinal representing an offset within a database table of a column which has been referenced within a program by name, the method comprising: allocating memory for storing a plurality of reference cache entries, each cache entry storing a reference to a text string representing a name for a given column and further storing an ordinal for the given column; upon a request for an ordinal of a particular column, said request including the text string which represents the name for the particular column, (i) attempting to determine the ordinal by examining the reference cache for an entry storing a reference which matches a corresponding reference to a text string representing the name for the particular column; (ii) if the reference cache has no such entry, (1) determining the ordinal based, at least in part, on comparison of the text string representing the name for the particular column, and (2) updating the reference cache by storing a cache entry having a reference to the text string and the ordinal for the particular column, so that subsequent requests for the ordinal of the particular column can be satisfied based on examination of the reference cache; and (iii) providing the determined ordinal for the particular column, so that the program has programmatic access to information stored at the particular column.
Claim 3
Dependent Claim
24 words
The method of claim 1, wherein said programmatic access includes an expression in the program which references a column by a corresponding column name.
Claim 4
Dependent Claim
20 words
The method of claim 2, wherein the column name comprises a text string describing information stored by the corresponding column.
Claim 5
Dependent Claim
37 words
The method of claim 2, wherein said expression in the program which references a column by a corresponding column name includes a reference to a column data value in a form of: <database table name>. <column name>.
Claim 6
Dependent Claim
28 words
The method of claim 1, wherein each ordinal comprises an integer data value identifying a column as being located at a particular ordinal offset within a database table.
Claim 7
Dependent Claim
21 words
The method of claim 1, wherein said allocating memory step comprises: allocating memory for storing at least twenty reference cache entries.
Claim 8
Dependent Claim
27 words
The method of claim 1, wherein each reference to a particular text string comprises a fixed-length data value serving as a handle to the particular text string.
Claim 9
Dependent Claim
50 words
The method of claim 1, wherein each reference to a particular text string comprises a 32-bit data value serving as a handle to the particular text string, the particular text string itself remaining allocated by the system so long as the particular text string is being referenced within the system.
Claim 10
Dependent Claim
32 words
The method of claim 8, wherein the particular text string is deallocated by a garbage collection memory management subsystem, when the particular text string is no long being referenced within the system.
Claim 11
Dependent Claim
28 words
The method of claim 8, wherein the particular text string comprises an immutable text string whose contents cannot change while the particular text string exists within the system.
Claim 12
Dependent Claim
34 words
The method of claim 1, wherein text strings stored within the system comprise Java-compatible text strings and wherein each reference to a particular text string comprises a 32-bit quantity referencing a Java-compatible text string.
Claim 13
Dependent Claim
27 words
The method of claim 1, wherein before said updating step further includes: if the reference cache is already filled, discarding from cache the least-recently allocated cache entry.
Claim 14
Dependent Claim
36 words
The method of claim 1, wherein said comparison of the text string at step (ii)(1) includes performing a hash lookup of the text string against text strings for names of other columns of the database table.
Claim 15
Dependent Claim
36 words
The method of claim 1, wherein said comparison of the text string at step (ii)(1) includes performing a sequential lookup of the text string against text strings for names of other columns of the database table.
Claim 16
Dependent Claim
27 words
The method of claim 1, wherein subsequent requests for the ordinal of the particular column are satisfied by reading the stored ordinal directly from the reference cache.
Claim 17
Dependent Claim
28 words
The method of claim 1, wherein said subsequent requests for the ordinal occur as a result of repeated requests for the particular column within a database scan loop.
Claim 18
Dependent Claim
23 words
The method of claim 1, further comprising: employing the determined ordinal to retrieve a data value for the column from the database table.
Claim 19
Dependent Claim
27 words
The method of claim 1, wherein step (i) includes: using a sequence of rapid, in-line comparisons involving a simple data type for attempting to determine the ordinal.
Claim 20
Dependent Claim
19 words
The method of claim 18, wherein said simple data type comprises a 32-bit reference for a column name string.
Claim 21
Dependent Claim
16 words
The method of claim 18, wherein said sequence of rapid, in-line comparisons comprises integer comparison operations.