日期:2014-05-18  浏览次数:20710 次

Excel数据倒入SQL server发生数据丢失,部分单元格数据到数据库编程NULL
RT,请问是什么原因?

------解决方案--------------------
单元格(数字+字母)
导入时就null
处理方法
在没有导入前,在单元格前加一个符号
导入后用
stuff或replace去掉符号


------解决方案--------------------
--加选项IMEX=1就不会丢失数据了
insert tablename(c1, c2,c3)
select a,b,c
from openrowset( 'Microsoft.Jet.OLEDB.4.0 ', 'EXCEL 8.0;HDR=YES;User id=admin;Password=;IMEX=1;
DATABASE=C:\temp.xls ', temp$)
------解决方案--------------------
Excel 驱动程序读取指定源中一定数量的行(默认情况下为 8 行)以推测每列的数据类型。如果推测出列可能包含混合数据类型(尤其是混合了文本数据的数值数据时),驱动程序将决定采用占多数的数据类型,并对包含其他类型数据的单元返回空值。(如果各种数据类型的数量相当,则采用数值类型。)

Excel 工作表中大部分单元格格式设置选项不会影响此数据类型判断。可以通过指定导入模式来修改 Excel 驱动程序的此行为。若要指定导入模式,请在“属性”窗口中将 IMEX=1 添加到 Excel 连接管理器的连接字符串内的扩展属性值中。
------解决方案--------------------
如果是数据量多可以用
=CONCATENATE( " ' ",B1)excle函数