没有FIELDDELIMITER的批量INSERT

时间:2013-12-17 07:33:53

标签: sql-server

如何批量插入如下文件?

的test.txt

012341231

013212313

011312321

012312312

文本文件不包含分隔符。我用过:

 BULK INSERT tbl_import_#id#
    FROM '../test.txt'
    WITH 
        (FIELDTERMINATOR = '\t',
         ROWTERMINATOR = '\n')

我得到了一个错误。感谢任何帮助。

2 个答案:

答案 0 :(得分:2)

没有问题。即使您的文件没有\t,等字段终止符,也可以指定字段终止符。

请尝试发布您遇到的错误。检查您的FROM文件“... / test.txt”位置和表架构以导入数据。最好发布你的错误。我无法重现你的错误。它适合我(我使用你的价值观)。

答案 1 :(得分:0)

只需在没有FILEDTERMINATOR

的情况下运行查询
 BULK INSERT tbl_import_#id#
    FROM '../test.txt'
    WITH (ROWTERMINATOR = '\n')

如果表中有多列(每行更多值),FIELDTERMINATOR参数将很有用。但是我可以看到情况并非如此,所以除了行之外你不需要分隔值,这些行将是你表中的记录。

修改

如果您可以使用其他表,只需创建一个只有1列(ID列)的表并运行导入(上面的查询)。

之后,运行ALTER命令并添加所需的其他列。