Microsoft Access 数据类型

下表显示了 Microsoft Access 数据类型、用于创建表的数据类型以及 ODBC SQL 数据类型。

Microsoft Access 数据类型 数据类型 (CREATETABLE) ODBC SQL 数据类型
BIGBINARY[1] LONGBINARY SQL_LONGVARBINARY
BINARY BINARY SQL_BINARY
BIT BIT SQL_BIT
计数器 计数器 SQL_INTEGER
CURRENCY CURRENCY SQL_NUMERIC
日期/时间 DATETIME SQL_TIMESTAMP
GUID GUID SQL_GUID
LONG BINARY LONGBINARY SQL_LONGVARBINARY
长文本 LONGTEXT SQL_LONGVARCHAR[2] SQL_WLONGVARCHAR[3]
备忘录 LONGTEXT SQL_LONGVARCHAR[2] SQL_WLONGVARCHAR[3]
NUMBER (FieldSize= SINGLE) SQL_REAL
NUMBER (FieldSize= DOUBLE) DOUBLE SQL_DOUBLE
NUMBER (FieldSize= BYTE) UNSIGNED BYTE SQL_TINYINT
NUMBER (FieldSize= INTEGER) SHORT SQL_SMALLINT
NUMBER (FieldSize= LONG INTEGER) LONG SQL_INTEGER
NUMERIC NUMERIC SQL_NUMERIC
OLE LONGBINARY SQL_LONGVARBINARY
TEXT VARCHAR SQL_VARCHAR[1] SQL_WVARCHAR[2]
VARBINARY VARBINARY SQL_VARBINARY

[1] 仅访问 4.0 应用程序。 最大长度为 4000 字节。 类似于 LONGBINARY 的行为。

[2] 仅限 ANSI 应用程序。

[3] 仅 Unicode 和 Access 4.0 应用程序。

注意

SQLGetTypeInfo 返回 ODBC 数据类型。 如果将多个 Microsoft Access 类型映射到同一 ODBC SQL 数据类型,则不会返回所有 Microsoft Access 数据类型。 上表中列出的 SQL 数据类型支持 ODBC 程序员参考 附录 D 中的所有转换。

下表显示了 Microsoft Access 数据类型的限制。

数据类型 说明
BINARY、VARBINARY 和 VARCHAR 创建长度为零或未指定长度的 BINARY、VARBINARY 或 VARCHAR 列实际上会返回一个 510 字节的列。
BYTE 即使 FieldSize 等于 BYTE 的 Microsoft Access NUMBER 字段是无符号的,使用 Microsoft Access 驱动程序时,可以在字段中插入负数。
CHAR、LONGVARCHAR 和 VARCHAR 字符串文本可以包含任何 ANSI 字符 (1-255 十进制) 。 使用两个连续的单引号 ('') 表示一个单引号 (') 。

在字符数据类型列中使用任何特殊字符时,应使用过程来传递字符数据。
DATE 日期值必须根据 ODBC 规范日期格式进行分隔,或者由 datetime 分隔符 (“#”) 分隔。 否则,Microsoft Access 会将该值视为算术表达式,并且不会引发警告或错误。

例如,日期“1996 年 3 月 5 日”必须表示为 {d '1996-03-05'} 或 #03/05/1996#;否则,如果仅提交 1993/03/05,Microsoft Access 会将此评估结果为 3 除以 5 除以 1996。 此值向上舍入为整数 0,并且由于零天映射到 1899-12-30,因此这是使用的日期。

管道字符 (|) 不能用于日期值,即使括在后引号中。
GUID 数据类型限制为 Microsoft Access 4.0。
NUMERIC 数据类型限制为 Microsoft Access 4.0。

有关数据类型的更多限制,请参阅 数据类型限制