Patent ID: 8156083
Filing Date: 2012-04-10
Classification: G06F

Abstract:
1. A computer-implemented method of creating and maintaining a history-enabled table in a relational database system, comprising: using at least one processor to perform a process, the process comprising: identifying or creating a current row table by adding a start time column to a pre-existing table that comprises a current column in a relational database system and is to be history enabled; identifying or creating a row history table in the relational database system that includes a period column and a history column corresponding to the current column in the current row table; tracking history of the pre-existing table without reading an undo log; responding to a change in a field in a current row of the current row table, the field being in the current column corresponding to the history column of the row history table, by at least: creating a history view that comprises a database view of a union of the current row table and the row history table, wherein the history view includes a period column, and a row period value in the period column is determined from the current row table and indicates a period of time that has not yet ended; and performing a temporal query on the history view by using at least a temporal query function defined by the relational database management system, wherein the temporal query function comprises a function that takes a period of time as a parameter and returns a set of rows of the history view for which the period of time overlaps another period indicated by the row period value of one of the set of rows of the row history table.