用OleDB读取Excel文件时,如果出现数字与文本的混合的列,就会出现错误
比如有一列
aaa
bbb
1.23
57.8
等等,对于有类型限制的数据库,如Sql Server或Access,没有任何问题,读取正常,因为它们肯定是文件了(CHAR型之类的)
然而对于Excel,它的列是任意的,你可以写文本,也可以写数字
现在的问题是OleDb它很“聪明”地自已读一列的前八行,然后判断该是什么类型,如果是数字,那么该列出现的文本就会被返回NULL值!
岂有此理!
翻了微软的文档,它们也承认这是设计的问题,晕死。