FDO Provider for Oracle Capabilities

FDO API

 
FDO Provider for Oracle Capabilities
 
 
 

The capabilities of an FDO provider are grouped in the following categories:

  • Connection
  • Schema
  • Commands
  • Filters
  • Expressions
  • Geometry
  • Raster

Connection Capabilities

Use the FdoIConnectionCapabilities object methods to learn about these capabilities. You can get this object by calling the GetConnectionCapabilities() method on the FdoIConnection object. For an explanation of the meaning of the capabilities, consult the FdoIConnectionCapabilities class description in the FDO API Reference documentation.

The following capabilities are supported:

  • Per connection threading
  • static spatial content extent type
  • locking
  • lock types: shared, exclusive, transaction, AllLongTransactionExclusive, LongTransactionExclusive
  • transactions
  • long transactions
  • SQL
  • XML configuration
  • multiple spatial contexts
  • specification of the coordinate system by name without specifying the WKT
  • Write
  • Multi-user write

Schema Capabilities

Use the FdoISchemaCapabilities object methods to learn about these capabilities. You can get this object by calling the GetSchemaCapabilities() method on the FdoIConnection object. For an explanation of the meaning of the capabilities, consult the FdoISchemaCapabilities class description in the FDO API Reference documentation.

The following capabilities are supported:

  • class and feature class class types
  • Boolean data type with a maximum length of 1 byte
  • Byte data type with a maximum length of 1 byte
  • DateTime data type with a maximum length of 12 bytes
  • Decimal data type with a maximum length of 165 digits (maximum decimal precision of 38 and maximum decimal scale of 127)
  • Double data type with a maximum length of 8 bytes
  • Int16 data type with a maximum length of 2 bytes
  • Int32 data type with a maximum length of 4 bytes
  • Int64 data type with a maximum length of 8 bytes
  • Single data type with a maximum length of 4 bytes
  • String data type with a maximum length of 4000
  • BLOB data type with a maximum length of 4000000000 bytes
  • CLOB data type with a maximum length of 4000000000 bytes
  • Int64 auto-generated data type
  • Identity properties of type Boolean, Byte, DateTime, Decimal, Double, Int16, Int32, Int64, Single, and String
  • Name size limitation of 30 for a schema element name of type FdoSchemaElementNameType_Datastore
  • Name size limitation of 255 for a schema element name of type FdoSchemaElementNameType_Schema
  • Name size limitation of 255 for a schema element name of type FdoSchemaElementNameType_Class
  • Name size limitation of 255 for a schema element name of type FdoSchemaElementNameType_Property
  • Name size limitation of 255 for a schema element name of type FdoSchemaElementNameType_Description
  • Characters that cannot be used for a schema element name: .:
  • Association properties
  • Auto ID generation
  • Composite ID
  • Composite unique value constraints
  • Datastore scope unique ID generation
  • Default value
  • Exclusive value range constraints
  • Inclusive value range constraints
  • Inheritance
  • Multiple schemas
  • Null value constraints
  • Object properties
  • Unique value constraints
  • Schema modification
  • Schema overrides
  • Unique value constraints
  • Value constraints list

Command Capabilities

Use the FdoICommandCapabilities object methods to learn about these capabilities. You can get this object by calling the GetCommandCapabilities() method on the FdoIConnection object. For an explanation of the meaning of the capabilities, consult the FdoICommandCapabilities class description in the FDO API Reference documentation.

The following commands are supported:

  • FdoCommandType_Select
  • FdoCommandType_SelectAggregates
  • FdoCommandType_Insert
  • FdoCommandType_Delete
  • FdoCommandType_Update
  • FdoCommandType_DescribeSchema
  • FdoCommandType_DescribeSchemaMapping
  • FdoCommandType_ApplySchema
  • FdoCommandType_DestroySchema
  • FdoCommandType_ActivateSpatialContext
  • FdoCommandType_CreateSpatialContext
  • FdoCommandType_DestroySpatialContext
  • FdoCommandType_GetSpatialContexts
  • FdoCommandType_CreateDataStore
  • FdoCommandType_DestroyDataStore
  • FdoCommandType_ListDataStores
  • FdoCommandType_SQLComnmand
  • FdoCommandType_AcquireLock
  • FdoCommandType_GetLockInfo
  • FdoCommandType_GetLockedObjects
  • FdoCommandType_GetLockOwners
  • FdoCommandType_ReleaseLock
  • FdoCommandType_ActivateLongTransaction
  • FdoCommandType_CommitLongTransaction
  • FdoCommandType_CreateLongTransaction
  • FdoCommandType_DeactivateLongTransaction
  • FdoCommandType_GetLongTransactions
  • FdoCommandType_RollbackLongTransaction
  • FdoRdbmsCommandType_CreateSpatialIndex
  • FdoRdbmsCommandType_DestroySpatialIndex
  • FdoRdbmsCommandType_GetSpatialIndexes

The following capabilities are supported:

  • simple functions in Select and SelectAggregate commands
  • use of expressions for properties in Select and SelectAggregates commands
  • use of Distinct in SelectAggregates command
  • availability of ordering in Select and SelectAggregates command
  • availability of grouping criteria in SelectAggregates command

Filter Capabilities

Use the FdoIFilterCapabilities object methods to learn about these capabilities. You can get this object by calling the GetFilterCapabilities() method on the FdoIConnection object. For an explanation of the meaning of the capabilities, consult the FdoIFilterCapabilities class description in the FDO API Reference documentation.

The following capabilities are supported:

  • Conditions of type comparison, like, in, null, spatial, and distance
  • the Within distance operation
  • spatial operations of type CoveredBy, Inside, Intersects, EnvelopeIntersects

Expression Capabilities

Use the FdoIExpressionCapabilities object methods to learn about these capabilities. You can get this object by calling the GetExpressionCapabilities() method on the FdoIConnection object. For an explanation of the meaning of the capabilities, consult the FdoIExpressionCapabilities class description in the FDO API Reference documentation.

Basic, function, and parameter expressions are supported.

The following functions are supported:

  • Double Avg(<type> value) where <type> is one of Decimal, Double, Single, Int16, Int32, or Int64.
  • Decimal Ceil(<type> value) where <type> is one of Decimal, Double, or Single
  • String Concat(String str1Val, String str2Val)
  • Int64 Count(<type> value) where <type> is one of Boolean, Byte, DateTime, Decimal, Double, Int16, Int32, Int64, Single, String, BLOB, or CLOB
  • Decimal Floor(<type> value) where <type> is one of Decimal, Double, or Single
  • String Lower(String value)
  • Byte Max(<type> value) where <type> is one of Byte, DateTime, Decimal, Double, Int16, Int32, Int64, Single, or String.
  • Byte Min(<type> value) where <type> is one of Byte, DateTime, Decimal, Double, Int16, Int32, Int64, Single, or String.
  • Double Sum(<type> value) where <type> is one of Decimal, Double, Int16, Int32, Int64, or Single.
  • String Upper(String value)
  • GeometricProperty SpatialExtents(GeometricProperty property)

Geometry Capabilities

Use the FdoIGeometryCapabilities object methods to learn about these capabilities. You can get this object by calling the GetGeometryCapabilities() method on the FdoIConnection object. For an explanation of the meaning of the capabilities, consult the FdoIGeometryCapabilities class description in the FDO API Reference documentation.

Dimensionality XYZM is supported. The geometry component types Ring, LinearRing, CircularArcSegment, and LineStringSegment are supported. The following geometry types are supported.

  • Point
  • LineString
  • Polygon
  • MultiPoint
  • MultiLineString
  • MultiPolygon
  • CurveString
  • CurvePolygon
  • MultiCurveString
  • MultiCurvePolygon

Raster Capabilities

Use the FdoIRasterCapabilities object methods to learn about these capabilities. You can get this object by calling the GetRasterCapabilities() method on the FdoIConnection object. For an explanation of the meaning of the capabilities, consult the FdoIRasterCapabilities class description in the FDO API Reference documentation.

No Raster capabilities are supported.