Copyright Digital Equipment Corp. All rights reserved.

DL_CreateRelation

NAME
  DL_CreateRelation, CSSM_DL_CreateRelation - Create a new persistent
                                              relation (CDSA)

SYNOPSIS
  # include <cssm.h>

   API:
       CSSM_RETURN CSSMAPI CSSM_DL_CreateRelation
       (CSSM_DL_DB_HANDLE DLDBHandle,
       CSSM_DB_RECORDTYPE RelationID,
       const char *RelationName,
       uint32 NumberOfAttributes,
       const CSSM_DB_SCHEMA_ATTRIBUTE_INFO *pAttributeInfo,
       uint32 NumberOfIndexes,
       const CSSM_DB_SCHEMA_INDEX_INFO *pIndexInfo)
   SPI:
       CSSM_RETURN CSSMDLI DL_CreateRelation
       (CSSM_DL_DB_HANDLE DLDBHandle,
       CSSM_DB_RECORDTYPE RelationID,
       const char *RelationName,
       uint32 NumberOfAttributes,
       const CSSM_DB_SCHEMA_ATTRIBUTE_INFO *pAttributeInfo,
       uint32 NumberOfIndexes,
       const CSSM_DB_SCHEMA_INDEX_INFO *pIndexInfo)

LIBRARY
  Common Security Services Manager library (CDSA$INCSSM300_SHR.EXE)

PARAMETERS
  DLDBHandle (input)
          The handle pair that describes the add-in data storage
          library module to be used to perform this function and the
          open data store in which to insert the new relation record.
          The database should be opened in administrative mode using
          the CSSM_DB_ACCESS_PRIVILEGED flag.

  RelationID (input)
          Indicates the type of relation record being added to the data
          store.

  RelationName (input)
          Indicates the name of the relation being added to the data
          store.

  NumberOfAttributes (input)
          Indicates the number of attributes specified in pAttributeInfo.

  pAttributeInfo (input)
          A list of structures containing the meta information (schema)
          describing the attributes for the relation being added to the
          specified data store. The list contains at most one entry per
          attribute in the specified record type.

  NumberOfIndexes (input)
          Indicates the number of indexes specified in pIndexInfo.

  pIndexInfo (input)
          A list of structures containing the meta information (schema)
          describing the indexes for the relation being added to the
          specified data store. The list contains at most one entry per
          index in the specified record type.

DESCRIPTION
  This function creates a new persistent relation of the specified type
  by inserting it into the specified data store. The pAttributeInfo and
  pIndexInfo specify the values contained in the new relation record.

RETURN VALUE
  A CSSM_RETURN value indicating success or specifying a particular
  error condition. The value CSSM_OK indicates success. All other
  values represent an error condition.

ERRORS
  Errors are described in the CDSA technical standard.  See CDSA.

       CSSMERR_DL_FIELD_SPECIFIED_MULTIPLE
       CSSMERR_DL_INVALID_ATTRIBUTE_INFO
       CSSMERR_DL_INVALID_DB_HANDLE
       CSSMERR_DL_INVALID_INDEX_INFO
       CSSMERR_DL_INVALID_RECORDTYPE

SEE ALSO
  Books

  Intel CDSA Application Developer's Guide (see CDSA)

  Other Help Topics

  Functions for the CSSM API:

      CSSM_DL_DestroyRelation

  Functions for the DL SPI:

      DL_DestroyRelation