文本文件数据类型

下表显示了如何将文本数据类型映射到 ODBC SQL 数据类型。 请注意,ODBC 文本驱动程序并不支持所有 ODBC SQL 数据类型。

文本数据类型 ODBC 数据类型
CHAR SQL_VARCHAR
DATETIME SQL_TIMESTAMP
FLOAT SQL_DOUBLE
INTEGER SQL_INTEGER
LONGCHAR SQL_LONGVARCHAR

注意

SQLGetTypeInfo 返回 ODBC 数据类型。 上表中列出的 SQL 数据类型支持 ODBC 程序员参考 附录 D 中的所有转换。

下表显示了文本数据类型的限制。

数据类型 说明
CHAR 创建长度为零或未指定长度的 CHAR 列实际上会返回一个 255 位列。

在带分隔符的文件中,CHAR 列的开头和结尾可能具有双引号分隔符,也可能不具有双引号分隔符;在固定长度文件中,双引号不用作分隔符。
DATETIME MM-DD-YY (例如,01-17-92)

例如,MMM-DD-YY (,1 月 17-92 日)

例如,DD-MMM-YY (,17-Jan-92)

例如,YYYY-MM-DD (1992-01-17)

例如,YYYY-MMM-DD (1992-Jan-17)

表中不允许使用混合日期分隔符。

文本 ISAM 以美国或欧洲格式设置 DATETIME 字段的格式,具体取决于 Windows 控制面板中的“国际”设置。
FLOAT 最大宽度包括符号和小数点。 在 Schema.ini 中,宽度表示如下:

14.083 为 FLOAT 宽度 6

-14.083 为 FLOAT 宽度 7

+14.083 为 FLOAT 宽度 7

14083。 是 FLOAT 宽度 6

对于 FLOAT 列,ODBC 始终返回 8。

FLOAT 列还可以使用科学记数法,例如:

-3.04E+2 为浮点宽度 8

25E4 为浮点宽度 4

注意 小数和科学表示法不能在列中混合。

NULL 值由固定长度文件中的空白填充字符串表示,在带分隔符的文件中省略。

可以使用前导空白填充浮点数据。
INTEGER INTEGER 列的有效值为 32767 到 -32766。

在 Schema.ini 中,宽度表示如下:

14083 为 INTEGER 宽度 5

0 表示整数宽度 1

ODBC 始终为 INTEGER 列返回 4。

最大宽度包括一个符号。 INTEGER 列的最大宽度为 11,但由于固定格式表中允许的空白,宽度可能更大。
LONGCHAR 固定长度或分隔表中 LONGCHAR 列的宽度的理论限制为 65500K。 文本 ISAM 更有可能提供高达约 32K 的可靠支持。

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