# FdoIApplySchema Class Reference

`#include <IApplySchema.h>`

Inheritance diagram for FdoIApplySchema:

[legend]

List of all members.

## Detailed Description

The FdoIApplySchema interface defines the ApplySchema command, which creates or updates a feature schema within the DataStore. Input to the ApplySchema command is the feature schema instance to be created or updated. Optionally, a provider-specific FdoIPhysicalSchemaMapping interface can be specified that can be used to control how the feature schema elements are mapped into physical storage.

Definition at line 38 of file IApplySchema.h.

## Public Member Functions
virtual FDO_API void | Execute ()=0
| Executes the ApplySchema command that creates metadata and physical storage for the schema. An exception is thrown if the schema already exists or if a schema already exists and the feature provider only supports a single schema. If schema changes include deletion of classes or the schema itself, then those classes (or the schema, if it is marked as deleted) must not contain any instance data. If they do, an exception will be thrown. Implementors must call FdoFeatureSchema::AcceptChanges() when Execute() succeeds. It must be called after the schema has been successfully applied, in order to synchronize the states of the schema elements.
virtual FDO_API FdoFeatureSchema * | GetFeatureSchema ()=0
| Gets the name of the schema to create.
virtual FDO_API FdoBoolean | GetIgnoreStates ()=0
| Indicates whether Execute() will ignore element states when applying the feature schema.
virtual FDO_API FdoPhysicalSchemaMapping * | GetPhysicalMapping ()=0
| Gets the FdoPhysicalSchemaMapping used to specify how the schema definition gets mapped into physical storage.
virtual FDO_API void | SetFeatureSchema (FdoFeatureSchema *value)=0
| Sets the name of the schema to create.
virtual FDO_API void | SetIgnoreStates (FdoBoolean ignoreStates)=0
| Changes the handling of element states by Execute().
virtual FDO_API void | SetPhysicalMapping (FdoPhysicalSchemaMapping *value)=0
| Sets the FdoPhysicalSchemaMapping used to specify how the schema definition gets mapped into physical storage.

The documentation for this class was generated from the following file:

- IApplySchema.h