EXCEL导入SQL后数据类型问题
SELECT * into VIP20130226
FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
'Data Source="c:\VIP20130226.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...[Sheet1$]
go
定义列code,materialid,price,quantity,storeid,storename,vipwldz 全部为nvarchar(255)
excel表有如下列:(原EXCEL表)
code,materialid,price,quantity,storeid,storename, vipwldz
10101009012230半成品仓 0
101030010184400半成品仓 0
10103012048450半成品仓 0
使用上面的导入SQL里面后 (导入SQL后),经在SQL里面查看code数据类型float......
code,materialid,price,quantity,storeid,storename, vipwldz
10101009.00.0122.03.00.0半成品仓0.0
10103001.00.0184.040.00.0半成品仓0.0
10103012.00.048.045.00.0半成品仓0.0
在SQL里面把该表改数据类型后数据就变得更离谱了
要求:如何可以设置导入后的SQL数据跟EXCEL数据一致?
[解决办法]
这个是根据数据来自动判断数据类型的。文本经常就直接成数字的了。
之前是这样做的,into 一个中间表,整理数据,(包括格式),到最终要导入的表中。
如果比较固定的业务,可以使用ssis的包进行批量处理。
[解决办法]