Microsoft Excel 数据类型
下表显示了如何将 Microsoft Excel 驱动程序数据类型映射到 ODBC SQL 数据类型。 Microsoft Excel 驱动程序根据列中的数据将这些数据类型分配给 Microsoft Excel 表中的列。
Microsoft Excel 数据类型 | ODBC 数据类型 |
---|---|
CURRENCY | SQL_NUMERIC |
DATETIME | SQL_TIMESTAMP |
LOGICAL | SQL_BIT |
NUMBER | SQL_DOUBLE |
TEXT | SQL_VARCHAR |
注意
SQLGetTypeInfo 返回 ODBC SQL 数据类型。 本主题前面列出的 ODBC SQL 数据类型支持 ODBC 程序员参考 附录 D 中的所有转换。
下表显示了 Microsoft Excel 数据类型的限制。
数据类型 | 说明 |
---|---|
加密数据 | Microsoft Excel 驱动程序无法读取加密的数据。 |
错误字符串 | Microsoft Excel 驱动程序无法为 Microsoft Excel 错误值 (#N/A!、#VALUE!、#REF!、#DIV/0!、#NUM!、#NAME?和 #NULL!) 返回字符串,而是返回 NULL。 |
LOGICAL | LOGICAL 列中的值在SQL_C_CHAR缓冲区中以 0 或 1 的形式返回。 |
NUMBER | 如果创建了整数列,则可以输入对于整数数据类型来说太大的数字,并且可以插入包含非整数值的数据,结果该列可能会转换为SQL_DOUBLE。 |
TEXT | 当列的行包含多个 Microsoft Excel 数据类型时,ODBC Microsoft Excel 驱动程序会将SQL_VARCHAR数据类型分配给该列。 有一个例外:如果列只包含两个或三个日期/时间数据类型 (DATE、TIME 和 DATETIME) ,则 ODBC Microsoft Excel 驱动程序会将SQL_TIMESTAMP数据类型分配给该列。 创建长度为零或未指定长度的 TEXT 列实际上会返回一个 255 字节的列。 字符串文本可以包含任何 ANSI 字符 (1-255 十进制) 。 使用两个连续的单引号 (“) 表示一个单引号 ( ) 。 将 NULL 插入数据类型为 SQL_VARCHAR 之外的列将导致列的数据类型更改为SQL_VARCHAR。 |
有关数据类型的更多限制,请参阅 数据类型限制。