有一文本,例内容如下(多行):
12 a b *
13 a d *
.
.
文本规范,空格分隔,*行结束
现要求导到表里的时候,表的第一个字段给定日期值,文本从第二个字段导入(第二行的日期自动复制)
求高手解答

解决方案 »

  1.   

    二楼说的可以借鉴,这样好导入点。。可以在EXCEL中用“分列”进行处理后导入
      

  2.   

    D:\format.xml
    <ROW>元素里面指定需要的列
    <?xml version="1.0"?> 
    <BCPFORMAT xmlns="http://schemas.microsoft.com/sqlserver/2004/bulkload/format" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
    <RECORD> 
    <FIELD ID="1" xsi:type="CharTerm" TERMINATOR=" " MAX_LENGTH="100"/>
    <FIELD ID="2" xsi:type="CharTerm" TERMINATOR=" " MAX_LENGTH="100"/>
    <FIELD ID="3" xsi:type="CharTerm" TERMINATOR=" " MAX_LENGTH="100"/>
    <FIELD ID="4" xsi:type="CharTerm" TERMINATOR="\r\n" MAX_LENGTH="100"/>
    </RECORD>
    <ROW> 
    <COLUMN SOURCE="2" NAME="col2" xsi:type="SQLNVARCHAR"/>
    <COLUMN SOURCE="3" NAME="col3" xsi:type="SQLNVARCHAR"/>
    </ROW>
    </BCPFORMAT>D:\test.txt
    12 a b *
    13 a d *OPENROWSET使用XML格式化文件大容量导入文件示例
    select * from openrowset(bulk 'D:\test.txt', formatfile='D:\format.xml') as t
    /*
    col2       col3
    ---------- ----------
    a          b
    a          d
    */参考:http://msdn.microsoft.com/zh-cn/library/ms190393%28v=SQL.100%29.aspx
      

  3.   

    XML格式化文件是最灵活的方式,稀奇古怪的txt文件格式基本上都可以通过XML格式化搞定。