Excel数据源ODBC判断数据类型
现象:通过ODBC往数据库中导入Excel表,或者是在程序中使用ODBC访问Excel表时,可能某些行会产生数据类型不符的错误。
原因:Microsoft Excel ODBC 驱动程序默认扫描前8行的数据来确定每列中的数据类型。Microsoft Excel ODBC 驱动程序使用以下注册表项中TypeGuessRows键值来确定扫描多少行确定数据类型:
Excel 97
HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Jet/3.5/Engines/Excel
Excel 2000 及更高版本
HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Jet/4.0/Engines/Excel
64位
HKEY_LOCAL_MACHINE/SOFTWARE/WOW6432Node/Microsoft/Jet/4.0/Engines/Excel
解决方法:
更改TypeGuessRows键值,该值取值范围0-16,为0时表示扫描所有行数据。
手动将Excel表第一行数据改为字符型,例如为数值16时,改为a16,以使ODBC使用字符类型来访问所有数据。
浙公网安备 33010602011771号