C5_SET UNIQUE

SET UNIQUE*
 Toggle inclusion of non-unique keys into an index
------------------------------------------------------------------------------
 Syntax

     SET UNIQUE on | OFF | <xlToggle>

 Arguments

     ON causes index files to be created with a uniqueness attribute.

     OFF causes index files to be created without a uniqueness attribute.

     <xlToggle> is a logical expression that must be enclosed in
     parentheses.  A value of true (.T.) is the same as ON, and a value of
     false (.F.) is the same as OFF.

 Description

     SET UNIQUE is a database command that controls whether indexes are
     created with uniqueness as an attribute.  With UNIQUE ON, new indexes
     are created including only unique keys.  This is the same as creating an
     index with the INDEX...UNIQUE command.

     If, during the creation or update of an unique index, two or more
     records are encountered with the same key value, only the first record
     is included in the index.  When the unique index is updated, REINDEXed,
     or PACKed, only unique records are maintained, without regard to the
     current SET UNIQUE value.

     Changing key values in a unique index has important implications.
     First, if a unique key is changed to the value of a key already in the
     index, the changed record is lost from the index.  Second, if there is
     more than one instance of a key value in a database file, changing the
     visible key value does not bring forward another record with the same
     key until the index is rebuilt with REINDEX, PACK, or INDEX...UNIQUE.

     With UNIQUE OFF, indexes are created with all records in the index.
     Subsequent updates to the database files add all key values to the index
     independent of the current UNIQUE SETting.

     SET UNIQUE is a compatibility command not recommended.  It is superseded
     by the UNIQUE clause of the INDEX command.

 Files   Library is CLIPPER.LIB.

See Also: DBCREATEIND() INDEX PACK REINDEX SEEK



Advertisements

4 responses to “C5_SET UNIQUE

  1. Pingback: C5_UPDATE | Viva Clipper !

  2. Pingback: C5 Index Commands and Functions | Viva Clipper !

  3. Pingback: DB Commands | Viva Clipper !

  4. Pingback: C5 Commands | Viva Clipper !

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.