一般文本都是从数据库导出的,所以都有一定的分割格式
你没必要采取截取法,直接用bcp就可以导入A2了
exec master..xp_cmdshell 'bcp 库名..A2 out 路径\文本名.txt -c -S服务器名 -Usa -P密码'

解决方案 »

  1.   

    最不易出错的方法:
    你手工用DTS向导导入数据库
      

  2.   

    1:
    create table a1(col varchar(8000))
    exec master..xp_cmdshell 'bcp 库名..A1 out 路径\文本名.txt -c -S服务器名 -Usa -P密码'
    2:
    insert into a2
    select left(a1.col,9) as 编号,
    substring(a1.col,len(a1.col)-9-8) as 公司名称,
    right(a1.col,8) as 日期
    from a1
      

  3.   

    对于格式不严格的数据文本,我个人的经验是先将文本倒入ACCESS数据库,因为ACCESS数据库对数据行不是严格对齐的文本数据的倒入作的最好,可以通过标尺手工调整字段的宽度
    倒入过程很方便,数据也很准
    然后在将ACCESS中的数据倒入SQL SERVER