Data Types in Analysis Services

For all DataItem objects, Analysis Services supports the following subset of System.Data.OleDb.OleDbType. To set or read the data type, use DataItem Data Type (ASSL).

Supported Data Types

BigInt A 64-bit signed integer. The BigInt value type represents integers with values ranging from negative 9,223,372,036,854,775,808 to positive 9,223,372,036,854,775,807.
Binary A stream of binary data of Byte type. Byte is a value type that represents unsigned integers with values that range from 0 to 255.
Boolean Instances of this type have values of either true or false.
Currency A currency value ranging from -922,337,203,685,477.5808 to +922,337,203,685,477.5807 with accuracy to a ten-thousandth of a currency unit (four decimal places).
Date Date and time data, stored as a double. The whole portion is the number of days since December 30, 1899, and the fractional portion is a fraction of a day or time of the day.
Double A floating-point number within the range of -1.79769313486232E +308 to 1.79769313486232E +308. A Double value stores number information up to 15 decimal digits of precision.
Integer A 32-bit signed integer that represents signed integers with values that range from negative 2,147,483,648 through positive 2,147,483,647.
Single A floating-point number within the range of - 3.4028235E +38 through 3.4028235E +38. A Single value stores number information up to 7 decimal digits of precision.
Smallint A 16-bit signed integer. The Smallint value type represents signed integers with values ranging from negative 32768 to positive 32767.
Tinyint An 8-bit signed integer. The Tinyint value type represents integers with values ranging from negative 128 to positive 127.
UnsignedBigInt A 64-bit unsigned integer. The UnsignedBigInt value type represents unsigned integers with values ranging from 0 to 18,446,744,073,709,551,615.
UnsignedInt A 32-bit unsigned integer. The UnsignedInt value type represents unsigned integers with values ranging from 0 to 4,294,967,295.
UnsignedSmallInt A 16-bit unsigned integer. The UnsignedSmallInt value type represents unsigned integers with values ranging from 0 to 65535.
UnsignedTinyInt An 8-bit unsigned integer. The UnsignedTinyInt value type represents unsigned integers with values that range from 0 to 255
WChar A null-terminated stream of Unicode characters. A WChar is a sequential collection of Unicode characters that is used to represent text.

AMO Validations on Data Types

The following table lists the extra validations that Analysis Management Objects (AMO) does for certain bindings:

Object Binding Allowed Data Types
DimensionAttribute KeyColumns All but Binary
NameColumn Only WChar
SkippedLevelsColumn Only integer types: BigInt, Integer, SmallInt, TinyInt, UnsignedBigInt, UnsignedInt, UnsignedSmallInt, UnsignedTinyInt
CustomRollupColumn Only WChar
CustomRollupPropertiesColumn Only WChar
UnaryOperatorColumn Only WChar
ValueColumn All
AttributeTranslation CaptionColumn Only WChar
ScalarMiningStructureColumn KeyColumns All but Binary
NameColumn Only WChar
TableMiningStructureColumn ForeignKeyColumns All but Binary
MeasureGroupAttribute KeyColumns All but Binary
Distinct Count Measure Source BigInt, Currency, Double, Integer, Single, SmallInt, TinyInt, UnsignedBigInt, UnsignedInt, UnsignedSmallInt, UnsignedTinyInt