【问题标题】:Start inserting from the second column on bulk insert从大容量插入的第二列开始插入
【发布时间】:2012-06-15 21:43:18
【问题描述】:

我有一张有 4 列的表格。我正在尝试将 .dat 文件中的批量插入到表中:

CREATE PROCEDURE insertIntoTable3
    @path nvarchar(500) 
AS 

declare @sql varchar(max)

select @sql='BULK INSERT Test1..Ao7 FROM ''';
select @sql=@sql+ @path ;
select @sql=@sql+''' with (FIELDTERMINATOR = ''|'' ,  ROWTERMINATOR = ''\n'' )';

exec(@sql)

.dat 文件包含 3 列的数据,例如:

rr  qwerwq  1
vv  asdf    1

我不想在第一列中插入。我想插入到第二、第三和第四列。

有没有办法从表格的第二列开始插入?

【问题讨论】:

    标签: sql sql-server tsql sql-server-2005 bulkinsert


    【解决方案1】:

    您可以使用临时表,在那里批量插入,然后只将您想要的列插入到目标中。

    或者你可以use a format file to skip columns

    【讨论】:

    • 有没有办法在没有批量插入的情况下做到这一点?
    • @pyram 也许,你想用BULK INSERT 避免什么?既然您的问题是“尝试批量插入”,您能否澄清您正在尝试做什么以及您想要避免什么?我不用开车也能到商场,而且我有很多选择——你能告诉我应该用哪一个吗?
    猜你喜欢
    • 2020-05-21
    • 2011-08-23
    • 1970-01-01
    • 2011-01-05
    • 2020-08-14
    • 1970-01-01
    • 1970-01-01
    • 2011-06-20
    • 1970-01-01
    相关资源
    最近更新 更多