OleDBConnection读取Excel数据为null的解决办法

连接字符串:

ADOConnection1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+
       edit1.Text+';Extended Properties="excel 8.0;IMEX=1;HDR=YES";Persist Security Info=True';

1。excel的连接字串中的扩展属性必须包含IMEX=1;

2.修改注册表中的HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Excel\TypeGuessRows的值为0。TypeGuessRows的系统默认值为8,表示系统从文件中的前8行数据中采样取得数据类型。如果前8行中含有数字类型又有文本类型,采样的数据类型为数目多的类型。例如前8行中有5行数字,3行文本,则返回5行数字,3行为空。如果4行数字,4行文本,则返回4行数字类型,4行为空。8行以后的数据类型若和采样类型一样,则返回真实数据,否则返回空
 

posted @ 2007-06-04 18:02  simplay  阅读(1317)  评论(0编辑  收藏  举报