用导入数据向导,将Excel文件导入到SQL Server数据库,头一回遇到这种错误:
“作为源列XXX的数据对于所指定的缓冲区来讲太大”,如图所示:
查了一下,结果如下:
修改服务器的注册表:
HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Jet/4.0/Engines/Excel 下
双击右边的"TypeGuessRows"选项,将"数值数据"改成0。
原因是:将excel表的数据导入数据库的时候,Jet引擎根据“TypeGuessRows”选项的值所代表的行数判断内容的数据类型,默认是根据前8行的内容判断数据类型,修改成0后,它会对每行的内容进行判断,不过这样做会影响性能。
还有一种方式,就是把数据内容多的数据提前到前8行,呵呵