INFO: OleDbType Enumeration vs. Microsoft Access Data Types
<script type="text/javascript">function loadTOCNode(){}</script>Article ID | : | 320435 |
Last Review | : | February 22, 2007 |
Revision | : | 4.1 |
This article was previously published under Q320435
<script type="text/javascript"> var sectionFilter = "type != 'notice' && type != 'securedata' && type != 'querywords'"; var tocArrow = "/library/images/support/kbgraphics/public/en-us/downarrow.gif"; var depthLimit = 10; var depth3Limit = 10; var depth4Limit = 5; var depth5Limit = 3; var tocEntryMinimum = 1; </script><script src="/common/script/gsfx/kbtoc.js?9" type="text/javascript"></script>
SUMMARY
<script type="text/javascript">loadTOCNode(1, 'summary');</script>
This article describes how the Microsoft .NET Platform OLE DB types map to the Microsoft Access data types for columns.
MORE INFORMATION
<script type="text/javascript">loadTOCNode(1, 'moreinformation');</script>
When you use the Access interface to design a table, you see several choices for field types that do not match to database data types. This is because these "types" are just display formats and do not determine the data type. Access uses other properties that are not necessarily exposed through the Microsoft OLE DB Provider for Jet to determine how to format the data.
Examples of these properties include the following:
* This data type is not available in the Access designer user interface. You must create this data type through code.
Examples of these properties include the following:
• | General Date, Long Date, Long Time, Medium Time, Short Time, Medium Date, and Short Date are display formats for DateTime data type. |
• | Hyperlink is a display format for Access Text data type. |
• | True/False and On/Off both map to the Access Yes/No data type. |
List of the Most Common Data Type Mappings
<script type="text/javascript">loadTOCNode(2, 'moreinformation');</script>The following table lists the most common data types that are used in Microsoft Access and how these data types relate to the Microsoft .NET Framework data types and to the OleDbType enumeration.Access Type Name | Database Data Type | OLE DB Type | .NET Framework Type | Member Name |
Text | VarWChar | DBTYPE_WSTR | System.String | OleDbType.VarWChar |
Memo | LongVarWChar | DBTYPE_WSTR | System.String | OleDbType.LongVarWChar |
Number: Byte | UnsignedTinyInt | DBTYPE_UI1 | System.Byte | OleDbType.UnsignedTinyInt |
Yes/No | Boolean | DBTYPE_BOOL | System.Boolean | OleDbType.Boolean |
Date/Time | DateTime | DBTYPE_DATE | System.DateTime | OleDbType.Date |
Currency | Decimal | DBTYPE_NUMERIC | System.Decimal | OleDbType.Numeric |
Number: Decimal | Decimal | DBTYPE_NUMERIC | System.Decimal | OleDbType.Numeric |
Number: Double | Double | DBTYPE_R8 | System.Double | OleDbType.Double |
Autonumber (Replication ID) | GUID | DBTYPE_GUID | System.Guid | OleDbType.Guid |
Number: (Replication ID) | GUID | DBTYPE_GUID | System.Guid | OleDbType.Guid |
Autonumber (Long Integer) | Integer | DBTYPE_I4 | System.Int32 | OleDbType.Integer |
Number: (Long Integer) | Integer | DBTYPE_I4 | System.Int32 | OleDbType.Integer |
OLE Object | LongVarBinary | DBTYPE_BYTES | Array of System.Byte | OleDbType.LongVarBinary |
Number: Single | Single | DBTYPE_R4 | System.Single | OleDbType.Single |
Number: Integer | SmallInt | DBTYPE_I2 | System.Int16 | OleDbType.SmallInt |
Binary | VarBinary* | DBTYPE_BYTES | Array of System.Byte | OleDbType.Binary |
Hyperlink | VarWChar | DBTYPE_WSTR | System.String | OleDbType.VarWChar |
* This data type is not available in the Access designer user interface. You must create this data type through code.
REFERENCES
<script type="text/javascript">loadTOCNode(1, 'references');</script>
For more information about data types, visit the following MSDN Web sites:
OLE DB Provider for Microsoft Jet: Data Type Support
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/oledb/htm/oledbprovjet_data_type_support.asp (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/oledb/htm/oledbprovjet_data_type_support.asp)
OLE DB Provider for Microsoft Jet: Provider-Specific Properties in DBPROPSET_JETOLEDB_COLUMN
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/oledb/htm/oledbprovjet_provider_specific_properties_in_dbpropset_jetoledb_column.asp (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/oledb/htm/oledbprovjet_provider_specific_properties_in_dbpropset_jetoledb_column.asp)
OleDbType Enumeration
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemDataOleDbOleDbTypeClassTopic.asp (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemDataOleDbOleDbTypeClassTopic.asp)
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/oledb/htm/oledbprovjet_data_type_support.asp (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/oledb/htm/oledbprovjet_data_type_support.asp)
OLE DB Provider for Microsoft Jet: Provider-Specific Properties in DBPROPSET_JETOLEDB_COLUMN
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/oledb/htm/oledbprovjet_provider_specific_properties_in_dbpropset_jetoledb_column.asp (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/oledb/htm/oledbprovjet_provider_specific_properties_in_dbpropset_jetoledb_column.asp)
OleDbType Enumeration
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemDataOleDbOleDbTypeClassTopic.asp (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemDataOleDbOleDbTypeClassTopic.asp)