Converting OLE DB Data Types to Visual Basic Scripting Edition Variant Types
[Indexing Service is no longer supported as of Windows XP and is unavailable for use as of Windows 8. Instead, use Windows Search for client side search and Microsoft Search Server Express for server side search.]
Because all programming access to Indexing Service is through the OLE DB Provider, you can retrieve only supported OLE DB data types when you ask for information back from a query. VBScript supports certain Automation data types within its VARIANT data-type implementation. The following table lists the OLE DB data types supported, their equivalent Automation variant types, and any formatting restrictions imposed when displaying the data to an end user through VBScript.
OLE DB data type | Automation Variant type | Formatting restrictions |
---|---|---|
DBTYPE_I1 | VT_I1 | Integer. Expressed either in decimal (base 10) or hexadecimal (base 16) notation. The latter requires 0x before the number, for example, 0xf8. |
DBTYPE_UI1 | VT_UI1 | Integer. Expressed either in decimal (base 10) or hexadecimal (base 16) notation. The latter requires 0x before the number. |
DBTYPE_I2 | VT_I2 | Integer. Expressed either in decimal (base 10) or hexadecimal (base 16) notation. The latter requires 0x before the number. |
DBTYPE_UI2 | VT_UI2 | Integer. Expressed either in decimal (base 10) or hexadecimal (base 16) notation. The latter requires 0x before the number. |
DBTYPE_I4 | VT_I4 | Integer. Expressed either in decimal (base 10) or hexadecimal (base 16) notation. The latter requires 0x before the number. |
DBTYPE_UI4 | VT_UI4 | Integer. Expressed either in decimal (base 10) or hexadecimal (base 16) notation. The latter requires 0x before the number. |
DBTYPE_I8 | VT_I8 | Integer. Expressed either in decimal (base 10) or hexadecimal (base 16) notation. The latter requires 0x before the number. |
DBTYPE_UI8 | VT_UI8 | Integer. Expressed either in decimal (base 10) or hexadecimal (base 16) notation. The latter requires 0x before the number. |
DBTYPE_R4 | VT_R4 | Real number. Can be expressed in scientific notation. |
DBTYPE_R8 | VT_R8 | Real number. Can be expressed in scientific notation. |
DBTYPE_CY | VT_CY | Currency. Expressed as two integers, separated by a period; for example, 100.55. Cannot be preceded by $, ¥, £, or other such signs. This data type does not specify the currency format. |
DBTYPE_DATE | VT_DATE | Date. Expressed as an absolute in two forms: yyyy/mm/dd and yyyy/mm/dd hh:mm:ss. Also expressed as a relative date: -#y, -#m, -#w, -#d, -#h, -#n, -#s where the letters correspond to year, month, week, day, hour, minute and second. Positive relative dates in the future are not supported. |
DBTYPE_BOOL | VT_BOOL | Boolean. Expressed as TRUE or FALSE. |
DBTYPE_STR | VT_LPSTR | String. Any input accepted. |
DBTYPE_WSTR | VT_LPWSTR | Unicode string. Any input accepted. |
DBTYPE_BSTR | VT_BSTR | Basic string. Any input accepted. |
DBTYPE_GUID | VT_CLSID | Globally unique identifier (GUID). Expressed as XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX. |
DBTYPE_BYREF | (not applicable) | For queries, this should be added to DBTYPE_STR and DBTYPE_WSTR string types. For example: DBTYPE_WSTR | DBTYPE_BYREF. |
DBTYPE_VECTOR | VT_VECTOR | Vector properties are fully supported. |
VT_FILETIME | VT_FILETIME | Expressed as an absolute in two forms: yyyy/mm/dd and yyyy/mm/dd hh:mm:ss. Also expressed as a relative date: -#y, -#m, -#w, -#d, -#h, -#n, -#s where the letters correspond to year, month, week, day, hour, minute and second. Positive relative dates into the future are not supported. |