1  /  1  页   1 跳转 查看:3619

SQL2005数据导入问题

SQL2005数据导入问题

我有一个文本文件,要导入数据库
格式如下
1                  2                    3              ds ww                    4
用导入到出,导入的时候,空格就是列的分隔符
这个要怎么导入???
 

回复:SQL2005数据导入问题

如果你的数据库是SQL Server 2005
有一个办法是:你可以先将TXT导入到Execl中,按空格做分隔符,导放完成后,再用将Execl导入到数据库中!
血染的风彩
 

回复:SQL2005数据导入问题

如果用固定个空格分隔,有一种方法,你先建立个xml的结构文件,如

<?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="50"/>
  <FIELD ID="2" xsi:type="CharTerm" TERMINATOR="  " MAX_LENGTH="50"/>
  <FIELD ID="3" xsi:type="CharTerm" TERMINATOR="  " MAX_LENGTH="50"/>
  <FIELD ID="4" xsi:type="CharTerm" TERMINATOR="  " MAX_LENGTH="50"/>
  <FIELD ID="5" xsi:type="CharTerm" TERMINATOR="  " MAX_LENGTH="50"/>
  <FIELD ID="6" xsi:type="CharTerm" TERMINATOR="\n" MAX_LENGTH="50"/>
</RECORD>
<ROW>
  <COLUMN SOURCE="1" NAME="1" xsi:type="SQLNVARCHAR"/>
  <COLUMN SOURCE="2" NAME="2" xsi:type="SQLNVARCHAR"/>
  <COLUMN SOURCE="3" NAME="3" xsi:type="SQLNVARCHAR"/>
  <COLUMN SOURCE="4" NAME="ds" xsi:type="SQLNVARCHAR"/>
  <COLUMN SOURCE="5" NAME="ww" xsi:type="SQLNVARCHAR"/>
  <COLUMN SOURCE="6" NAME="4" xsi:type="SQLNVARCHAR"/>
</ROW>
</BCPFORMAT>

再用如下语句读取
select *
from openrowset( bulk 'u:\test\test.txt',
  FORMATFILE='u:\test\test.xml',FIRSTROW=2,CODEPAGE='RAW',MAXERRORS=1) a
 

回复:SQL2005数据导入问题

这种方法的效率不会低于bcp
 
1  /  1  页   1 跳转

版权所有 微软BI开拓者 

Powered by Discuz!NT 2.1.202    Copyright © 2001-2012 Comsenz Inc.
Processed in 0.0937524 second(s) , 3 queries.
返顶部