The following table shows the Visual Basic data types, their supporting common language runtime types, their nominal storage allocation, and their value ranges.
Visual Basic type | Common language runtime type structure | Nominal storage allocation | Value range | System. Data.SqlDbType |
---|---|---|---|---|
Boolean | Boolean | Depends on implementing platform | True or False | Bit |
Byte | Byte | 1 byte | 0 through 255 (unsigned) | TinyInt |
Byte | Byte | Byte array | Array size | Binary [8000] Image [2147483647] Timestamp [8] VarBinary [8000] |
Char (single character) | Char | 2 bytes | 0 through 65535 (unsigned) | |
Date | DateTime | 8 bytes | 0:00:00 (midnight) on January 1, 0001 through 11:59:59 PM on December 31, 9999 | DateTime SmallDateTime |
Decimal | Decimal | 16 bytes | 0 through +/-79,228,162,514,264,337,593,543,950,335 (+/-7.9...E+28) † with no decimal point; 0 through +/-7.9228162514264337593543950335 with 28 places to the right of the decimal; smallest nonzero number is +/-0.0000000000000000000000000001 (+/-1E-28) † | Decimal Money SmallMoney |
Double (double-precision floating-point) | Double | 8 bytes | -1.79769313486231570E+308 through -4.94065645841246544E-324 † for negative values; 4.94065645841246544E-324 through 1.79769313486231570E+308 † for positive values | Float |
Integer | Int32 | 4 bytes | -2,147,483,648 through 2,147,483,647 (signed) | Int |
Long (long integer) | Int64 | 8 bytes | -9,223,372,036,854,775,808 through 9,223,372,036,854,775,807 (9.2...E+18 †) (signed) | BigInt |
Object | Object (class) | 4 bytes on 32-bit platform 8 bytes on 64-bit platform | Any type can be stored in a variable of type Object | |
SByte | SByte | 1 byte | -128 through 127 (signed) | |
Short (short integer) | Int16 | 2 bytes | -32,768 through 32,767 (signed) | SmallInt |
Single (single-precision floating-point) | Single | 4 bytes | -3.4028235E+38 through -1.401298E-45 † for negative values; 1.401298E-45 through 3.4028235E+38 † for positive values | Real |
String (variable-length) | String (class) | Depends on implementing platform | 0 to approximately 2 billion Unicode characters | Char [8000] Nchar [4000] Ntext [1073741823] NVarChar [4000] Text [2147483647] VarChar [8000] |
UInteger | UInt32 | 4 bytes | 0 through 4,294,967,295 (unsigned) | |
ULong | UInt64 | 8 bytes | 0 through 18,446,744,073,709,551,615 (1.8...E+19 †) (unsigned) | |
User-Defined (structure) | (inherits from ValueType) | Depends on implementing platform | Each member of the structure has a range determined by its data type and independent of the ranges of the other members | |
UShort | UInt16 | 2 bytes | 0 through 65,535 (unsigned) |
† In scientific notation, "E" refers to a power of 10. So 3.56E+2 signifies 3.56 x 102 or 356, and 3.56E-2 signifies 3.56 / 102 or 0.0356.
No comments:
Post a Comment