create_version

CREATE VERSION(SQL)               Postgres95               CREATE VERSION(SQL)



NAME
       create version — construct a version class

SYNOPSIS
       create version classname1 from classname2 [[abstime]]

DESCRIPTION
       Currently, the versioning facility is not working.

       This command creates a version class classname1 which is related to its
       parent class, classname2.  Initially, classname1 has the same contents
       as classname2.  As updates to classname1 occur, however, the content of
       classname1 diverges from classname2.  On the other hand, any updates to
       classname2 show transparently through to classname1, unless the
       instance in question has already been updated in classname1.

       If the optional abstime clause is specified, then the version is
       constructed relative to a snapshot of classname2 as of the time
       specified.

       Postgres uses the query rewrite rule system to ensure that classname1
       is differentially encoded relative to classname2.  Moreover, classname1
       is automatically constructed to have the same indexes as classname2.
       It is legal to cascade versions arbitrarily, so a tree of versions can
       ultimately result.  The algorithms that control versions are explained
       in [ONG90].

EXAMPLE
       --
       --create a version foobar from a snapshot of
       --barfoo as of January 17, 1990
       --
       create version foobar from barfoo [ "Jan 17 1990" ]

SEE ALSO
       create view(l), merge(l).

BUGS
       Snapshots (i.e., the optional abstime clause) are not implemented in
       Postgres.



Postgres95                         01/23/93                CREATE VERSION(SQL)