DataType Enum
Definition
Indicates the data type of columns in data flow components and the data flow buffer.
public enum class DataType
public enum DataType
type DataType =
Public Enum DataType
 Inheritance

DataType
Fields
DT_BOOL  11  A Boolean value. The numeric value is 11. 
DT_BYREF_BOOL  16395  A pointer to a Boolean value. The numeric value is 16395. 
DT_BYREF_CY  16390  A pointer to a currency value. This data type is an 8byte value with a scale of 4 and a maximum precision of 19. The numeric value is 16390. 
DT_BYREF_DATE  16391  A pointer to a date structure that consists of year, month, date, and hour. The numeric value is 16391. 
DT_BYREF_DBDATE  16517  A pointer to a date structure that consists of year, month, and date. The numeric value is 16517. 
DT_BYREF_DBTIME  16518  A pointer to a time structure that consists of hour, minute, and second. The numeric value is 16518. 
DT_BYREF_DBTIME2  16520  A pointer to a time structure that consists of hour, minute, second, and fractional seconds. The fractional seconds have a maximum scale of 7 digits. The numeric value is 16520. 
DT_BYREF_DBTIMESTAMP  16519  A pointer to a timestamp structure that consists of year, month, day, hour, minute, second, and fractional seconds. The fractional seconds have a maximum scale of 3 digits. The numeric value is 16519. 
DT_BYREF_DBTIMESTAMP2  16522  A pointer to a timestamp structure that consists of year, month, day, hour, minute, second, and fractional seconds. The fractional seconds have a maximum scale of 7 digits. The numeric value is 16522. 
DT_BYREF_DBTIMESTAMPOFFSET  16521  A pointer to a timestamp structure that consists of year, month, day, hour, minute, second, and fractional seconds. The fractional seconds have a maximum scale of 7 digits. 
DT_BYREF_DECIMAL  16398  A pointer to an exact numeric value with a fixed precision and a fixed scale. This data type is a 12byte value with a separate sign, a scale of 0 to 28, and a maximum precision of 29. The numeric value is 16398. 
DT_BYREF_FILETIME  16448  A pointer to a 64bit value that represents the number of 100nanosecond intervals since January 1, 1601. The numeric value is 16448. 
DT_BYREF_GUID  16456  A pointer to a GUID. The numeric value is 16456. 
DT_BYREF_I1  16400  A pointer to a 1byte, signed integer. The numeric value is 16400. 
DT_BYREF_I2  16386  A pointer to a 2byte, signed integer. The numeric value is 16386. 
DT_BYREF_I4  16387  A pointer to a 4byte, signed integer. The numeric value is 16387. 
DT_BYREF_I8  16404  A pointer to an 8byte, signed integer. The numeric value is 16404. 
DT_BYREF_NUMERIC  16515  A pointer to an exact numeric value with a fixed precision and scale. This data type is a 16byte value with a separate sign, a scale of 0 to 38, and a maximum precision of 38. The numeric value is 16515. 
DT_BYREF_R4  16388  A pointer to a singleprecision floatingpoint value. The numeric value is 16388. 
DT_BYREF_R8  16389  A pointer to a doubleprecision floatingpoint value. The numeric value is 16389. 
DT_BYREF_UI1  16401  A pointer to a 1byte, unsigned integer. The numeric value is 16401. 
DT_BYREF_UI2  16402  A pointer to a 2byte, unsigned integer. The numeric value is 16402. 
DT_BYREF_UI4  16403  A pointer to a 4byte, unsigned integer. The numeric value is 16403. 
DT_BYREF_UI8  16405  A pointer to an 8byte, unsigned integer. The numeric value is 16405. 
DT_BYTES  128  A binary data value. The length is variable and the maximum length is 8,000 bytes. The numeric value is 128. 
DT_CY  6  A currency value. This data type is an 8byte value with a scale of 4 and a maximum precision of 19. The numeric value is 6. 
DT_DATE  7  A date structure that consists of year, month, day, and hour. 
DT_DBDATE  133  A date structure that consists of year, month, and date. The numeric value is 133. 
DT_DBTIME  134  A time structure that consists of hour, minute, and second. The numeric value is 134. 
DT_DBTIME2  145  A time structure that consists of hour, minute, second, and fractional seconds. The fractional seconds have a maximum scale of 7 digits. The numeric value is 145. 
DT_DBTIMESTAMP  135  A timestamp structure that consists of year, month, day, hour, minute, second, and fractional seconds. The fractional seconds have a maximum scale of 3 digits. The numeric value is 135. 
DT_DBTIMESTAMP2  304  A timestamp structure that consists of year, month, day, hour, minute, second, and fractional seconds. The fractional seconds have a maximum scale of 7 digits. The numeric value is 304. 
DT_DBTIMESTAMPOFFSET  146  A timestamp structure that consists of year, month, day, hour, minute, second, and fractional seconds. The fractional seconds have a maximum scale of 7 digits. 
DT_DECIMAL  14  An exact numeric value with a fixed precision and a fixed scale. This data type is a 12byte value with a separate sign, a scale of 0 to 28, and a maximum precision of 29. The numeric value is 14. 
DT_EMPTY  0  A data type that does not have a value. The numeric value is 0. 
DT_FILETIME  64  A 64bit value that represents the number of 100nanosecond intervals since January 1, 1601. The numeric value is 64. 
DT_GUID  72  A globally unique identifier (GUID). The numeric value is 72. 
DT_I1  16  A 1byte, signed integer. The numeric value is 16. 
DT_I2  2  A 2byte, signed integer. The numeric value is 2. 
DT_I4  3  A 4byte, signed integer. The numeric value is 3. 
DT_I8  20  An 8byte, signed integer. The numeric value is 20. 
DT_IMAGE  301  A binary value with a maximum size of 231–1 (2,147,483,647) bytes. The numeric value is 301. 
DT_NTEXT  303  A Unicode character string with a maximum length of 2^30–1 (1,073,741,823) characters. The numeric value is 303. 
DT_NULL  1  A data type with a value of NULL. The numeric value is 1. 
DT_NUMERIC  131  An exact numeric value with a fixed precision and scale. This data type is a 16byte value with a separate sign, a scale of 0 to 38, and a maximum precision of 38. The numeric value is 131. 
DT_R4  4  A singleprecision floatingpoint value. The numeric value is 4. 
DT_R8  5  A doubleprecision floatingpoint value. The numeric value is 5. 
DT_STR  129  A nullterminated ANSI/MBCS character string. The numeric value is 129. 
DT_TEXT  302  An ANSI/MBCS character string with a maximum length of 231–1 (2,147,483,647) characters. The numeric value is 302. 
DT_UI1  17  A 1byte, unsigned integer. The numeric value is 17. 
DT_UI2  18  A 2byte, unsigned integer. The numeric value is 18. 
DT_UI4  19  A 4byte, unsigned integer. The numeric value is 19. 
DT_UI8  21  An 8byte, unsigned integer. The numeric value is 21. 
DT_WSTR  130  A nullterminated Unicode character string. The numeric value is 130. 
Remarks
Data types are divided into reference types and value types. Reference types point to an object of the specified type. Value types contain the actual data, not a pointer to the data.
For those data types that are value types, there are times where you need a pointer to their data, not the data itself. In the member table, the DT_BYREF* members are fields that were created to be pointers to value types.
For more information, see Working with Data Types in the Data Flow.
Note
Boolean values are logical values, not numbers. Although Boolean values may be displayed as numbers in some environments, they are not stored as numbers, and various programming languages represent Boolean values as numeric values differently, as do the .NET Framework methods.
For example, the conversion functions available in Visual Basic convert True
to 1; however, the System.Convert.ToInt32
method in the .NET Framework converts True
to +1. The Integration Services Expression Language converts True
to 1.
To avoid errors or unexpected results, you should not write code that relies on particular numeric values for True
and False
. Wherever possible, you should restrict usage of Boolean variables to the logical values for which they are designed.
For more information about data types, see Integration Services Data Types.