Classes
Protocols
Constants
Functions
Macros
Types
Variables

### Classes

EOAccessArrayFaultHandler
EOAccessFaultHandler
EOAccessGenericFaultHandler
EOAdaptor
EOAdaptorChannel
EOAdaptorContext
EOAdaptorOperation
EOAttribute
EODatabase
EODatabaseChannel
EODatabaseContext
EODatabaseDataSource
EODatabaseOperation
EOEntity
EOEntityClassDescription
EOJoin
EOLoginPanel
EOModel
EOModelGroup
EORelationship
EOSQLExpression
EOSQLExpressionFactory
EOSQLQualifier
EOStoredProcedure

### Protocols

<EOColumnTypes>
<EOPropertyListEncoding>
<EOQualifierSQLGeneration>
(EOAdaptorChannelDelegation)
(EOAdaptorContextDelegation)
(EOAdaptorDelegate)
(EODatabaseContextDelegation)
(EOModelGroupClassDelegation)
(EOModelGroupDelegation)
(EOSchemaSynchronizationDelegates)

### Constants

### Functions

EODatabaseContext_globalIDForObjectWithImpPtr
EODatabaseContext_snapshotForGlobalIDWithImpPtr
GDL2_EOAccessPrivateInit

### Macros

### Types

EOAdaptorOperator
EODatabaseOperator
EODelegateResponse
EOJoinSemantic
EOUpdateStrategy

### Variables

EOAccessFaultObjectNotAvailableException
EOAdaptorContextBeginTransactionNotification
EOAdaptorContextCommitTransactionNotification
EOAdaptorContextRollbackTransactionNotification
EOAdaptorFailureKey
EOAdaptorKey
EOAdaptorOperationsKey
EOAdaptorOptimisticLockingFailure
EOAdministrativeConnectionDictionaryKey
EOAdministrativeConnectionDictionaryNeededNotification
EOAllowsNullKey
EOBindVariableAttributeKey
EOBindVariableColumnKey
EOBindVariableNameKey
EOBindVariablePlaceHolderKey
EOBindVariableValueKey
EOColumnNameKey
EOConnectionDictionaryKey
EOCreateDatabaseKey
EOCreatePrimaryKeySupportKey
EOCreateTablesKey
EOCustomQueryExpressionHintKey
EODatabaseChannelNeededNotification
EODatabaseContextKey
EODatabaseOperationsKey
EODeleteProcedureOperation
EODistantPastTimeInterval
EODropDatabaseKey
EODropPrimaryKeySupportKey
EODropTablesKey
EOEntityLoadedNotification
EOExternalNameKey
EOExternalTypeKey
EOFailedAdaptorOperationKey
EOFailedDatabaseOperationKey
EOFetchAllProcedureOperation
EOFetchWithPrimaryKeyProcedureOperation
EOForeignKeyConstraintsKey
EOGeneralAdaptorException
EOGeneralDatabaseException
EOInsertProcedureOperation
EOModelAddedNotification
EOModelInvalidatedNotification
EOModelKey
EOMoreThanOneException
EONameKey
EONextPrimaryKeyProcedureOperation
EOPrecisionKey
EOPrimaryKeyConstraintsKey
EORelationshipsKey
EOScaleKey
EOSchemaSynchronizationForeignKeyConstraintsKey
EOSchemaSynchronizationPrimaryKeyConstraintsKey
EOSchemaSynchronizationPrimaryKeySupportKey
EOStoredProcedureNameHintKey
EOWidthKey
GDL2_EOAttributeClass
GDL2_EODatabaseContextClass
GDL2_EODatabaseContext__globalIDForObjectIMP
GDL2_EODatabaseContext_snapshotForGlobalIDIMP
GDL2_EOEntityClass
GDL2_EORelationshipClass
eqSel
struct _EOTransactionScope

Up

# EOSchemaGeneration Class

### Authors

David Ayers (`ayers@fsfe.org`)

Date: Generated at 2026-02-03 22:13:20 +0000

Copyright: (C) 2006 Free Software Foundation, Inc.

### Contents -

1. Software documentation for the EOSQLExpression(EOSchemaGeneration) category
2. EOSchemaGeneration variables

# Software documentation for the EOSQLExpression(EOSchemaGeneration) category

## EOSQLExpression(EOSchemaGeneration)

> Declared in:
>   EOAccess/EOSchemaGeneration.h

Description forthcoming.

### Method summary

- +appendExpression:toScript:
- +createDatabaseStatementsForConnectionDictionary:administrativeConnectionDictionary:
- +createTableStatementsForEntityGroup:
- +createTableStatementsForEntityGroups:
- +dropDatabaseStatementsForConnectionDictionary:administrativeConnectionDictionary:
- +dropPrimaryKeySupportStatementsForEntityGroup:
- +dropPrimaryKeySupportStatementsForEntityGroups:
- +dropTableStatementsForEntityGroup:
- +dropTableStatementsForEntityGroups:
- +foreignKeyConstraintStatementsForRelationship:
- +primaryKeyConstraintStatementsForEntityGroup:
- +primaryKeyConstraintStatementsForEntityGroups:
- +primaryKeySupportStatementsForEntityGroup:
- +primaryKeySupportStatementsForEntityGroups:
- +schemaCreationScriptForEntities:options:
- +schemaCreationStatementsForEntities:options:
- +selectStatementForContainerOptions
- -addCreateClauseForAttribute:
- -allowsNullClauseForConstraint:
- -columnTypeStringForAttribute:
- -prepareConstraintStatementForRelationship:sourceColumns:destinationColumns:

### appendExpression: toScript:

+ (void) appendExpression: (EOSQLExpression*)expression toScript: (NSMutableString*)script;
Append expression statement to an executable script. The default implementation appends the ';'

### createDatabaseStatementsForConnectionDictionary: administrativeConnectionDictionary:

+ (NSArray*) createDatabaseStatementsForConnectionDictionary: (NSDictionary*)connectionDictionary administrativeConnectionDictionary: (NSDictionary*)administrativeConnectionDictionary;
Generates the statements to create a database.

### createTableStatementsForEntityGroup:

+ (NSArray*) createTableStatementsForEntityGroup: (NSArray*)entityGroup;
Generates the statements necessary to implement the schema generation for an entityGroup like creating/dropping a table, a primary key constaint or a primary key generation support such as a sequence.

### createTableStatementsForEntityGroups:

+ (NSArray*) createTableStatementsForEntityGroups: (NSArray*)entityGroups;
Generates statements to create/drop a specific schema generation for a list of entityGroups.

### dropDatabaseStatementsForConnectionDictionary: administrativeConnectionDictionary:

+ (NSArray*) dropDatabaseStatementsForConnectionDictionary: (NSDictionary*)connectionDictionary administrativeConnectionDictionary: (NSDictionary*)administrativeConnectionDictionary;
Generates the statements to drop the database.

### dropPrimaryKeySupportStatementsForEntityGroup:

+ (NSArray*) dropPrimaryKeySupportStatementsForEntityGroup: (NSArray*)entityGroup;
Description forthcoming.

### dropPrimaryKeySupportStatementsForEntityGroups:

+ (NSArray*) dropPrimaryKeySupportStatementsForEntityGroups: (NSArray*)entityGroups;
Description forthcoming.

### dropTableStatementsForEntityGroup:

+ (NSArray*) dropTableStatementsForEntityGroup: (NSArray*)entityGroup;
Description forthcoming.

### dropTableStatementsForEntityGroups:

+ (NSArray*) dropTableStatementsForEntityGroups: (NSArray*)entityGroups;
Description forthcoming.

### foreignKeyConstraintStatementsForRelationship:

+ (NSArray*) foreignKeyConstraintStatementsForRelationship: (EORelationship*)relationship;
The default implementation verifies the relationship joins and calls prepareConstraintStatementForRelationship:sourceColumns:destinationColumns:

### primaryKeyConstraintStatementsForEntityGroup:

+ (NSArray*) primaryKeyConstraintStatementsForEntityGroup: (NSArray*)entityGroup;
Description forthcoming.

### primaryKeyConstraintStatementsForEntityGroups:

+ (NSArray*) primaryKeyConstraintStatementsForEntityGroups: (NSArray*)entityGroups;
Description forthcoming.

### primaryKeySupportStatementsForEntityGroup:

+ (NSArray*) primaryKeySupportStatementsForEntityGroup: (NSArray*)entityGroup;
Description forthcoming.

### primaryKeySupportStatementsForEntityGroups:

+ (NSArray*) primaryKeySupportStatementsForEntityGroups: (NSArray*)entityGroups;
Description forthcoming.

### schemaCreationScriptForEntities: options:

+ (NSString*) schemaCreationScriptForEntities: (NSArray*)entities options: (NSDictionary*)options;
Returns a script to create the schema for the given entities specific for the target db. Options are the same as [+schemaCreationStatementsForEntities:options:]

### schemaCreationStatementsForEntities: options:

+ (NSArray*) schemaCreationStatementsForEntities: (NSArray*)entities options: (NSDictionary*)options;

Returns an array of EOSQLExpression suitable to create the schema for the given entities specific for the target db. Possible options are:

- Name Value Default
- createTables YES/NO `YES`
- dropTables YES/NO `YES`
- createPrimaryKeySupport YES/NO `YES`
- dropPrimaryKeySupport YES/NO `YES`
- primaryKeyConstraints YES/NO `YES`
- foreignKeyConstraints YES/NO `NO`
- createDatabase YES/NO `NO`
- dropDatabase YES/NO `NO`

### selectStatementForContainerOptions

+ (EOSQLExpression*) selectStatementForContainerOptions;
Description forthcoming.

### addCreateClauseForAttribute:

- (void) addCreateClauseForAttribute: (EOAttribute*)attribute;
Assembles the create table statement for the given attribute

### allowsNullClauseForConstraint:

- (NSString*) allowsNullClauseForConstraint: (BOOL)allowsNull;
Generates a string to be used in a create table statement

### columnTypeStringForAttribute:

- (NSString*) columnTypeStringForAttribute: (EOAttribute*)attribute;
Assembles an adaptor specific string for using in a create table statement.

### prepareConstraintStatementForRelationship: sourceColumns: destinationColumns:

- (void) prepareConstraintStatementForRelationship: (EORelationship*)relationship sourceColumns: (NSArray*)sourceColumns destinationColumns: (NSArray*)destinationColumns;
Assembles an adaptor specific constraint statement for relationship and the given source and destination columns

# EOSchemaGeneration variables

### EOCreateDatabaseKey

NSString* EOCreateDatabaseKey;
Description forthcoming.

### EOCreatePrimaryKeySupportKey

NSString* EOCreatePrimaryKeySupportKey;
Description forthcoming.

### EOCreateTablesKey

NSString* EOCreateTablesKey;
Keys to use the options dictionary for +schemaCreationScriptForEntities:options: and +schemaCreationStatementsForEntities:options:

### EODropDatabaseKey

NSString* EODropDatabaseKey;
Description forthcoming.

### EODropPrimaryKeySupportKey

NSString* EODropPrimaryKeySupportKey;
Description forthcoming.

### EODropTablesKey

NSString* EODropTablesKey;
Description forthcoming.

### EOForeignKeyConstraintsKey

NSString* EOForeignKeyConstraintsKey;
Description forthcoming.

### EOPrimaryKeyConstraintsKey

NSString* EOPrimaryKeyConstraintsKey;
Description forthcoming.

Up