需求参见
http://topic.csdn.net/u/20091113/18/6f60f154-2512-443d-ae74-418cc1968748.html?91318
用schema.ini的配置当然是可以,但是用ssis更方便。
步骤如下:
1)
准备一txt文件存许于d:/x.txt.内容如下:
20090054200000000000台 一体机00
2009003619 台 电话机
2009003620000000 台111电话机
2009003618 台 电话机
2009001557 套 办公桌
2009001558 套 办公桌
2)
在SSMS中, test库下创建一导入表 tb.
3)
打开VS2005, 创建C#项目》商业智能项目》Intergration 项目
a,在控制流中拖入一数据流任务,双击数据流任务,进入数据流设置界面.
b,放置一个平面文本源,指向到x.txt, 常规选项》 格式 的下拉中选择 "固定宽度"
c, 列》选项中,拖动红线,拖到行末(你自己定义的),注意下方显示为“行宽”
d,行宽设置完毕后,在你需要的位置,用鼠标点击,注意下方显为“列宽”,点击的地方,则分列。
注意,界面上d 这一步是没有红点的,我标志的红点只是为了显示你应该点什么位置。
e, 确定后,在数据流界面拖一oledb目标,当然是指向test库下的tb表, 将平面文本源指向到它, 并设置列映射, 就可以了。然后运行项目
f, 结束后,回到SSMS,执行 SELECT * FROM tb