【发布时间】:2019-03-19 16:35:44
【问题描述】:
我需要一些关于第 3 方提供给我们的平面文件的帮助,该文件使用:
Field1[**]Field2[**]Field3[**]Field4[<>]Field1[**]Field2[**]Field3[**]Field4[<>]
作为:
Row1:Field1 Field2 Field3 Field4
Row2:Field1 Field2 Field3 Field4
作为平面文件。我希望能够通过 BCP 或 Openrowset 或使用 SSMS 17.5 的批量插入将平面文件直接导入表
我猜我需要一个格式文件,但我不知道如何定义这些分隔符!方括号是分隔符的一部分。
我唯一的选择是 CLOB 和 Replace,但这是双重处理..
【问题讨论】:
-
匆忙,抱歉,这可能会对您有所帮助:mssqltips.com/sqlservertip/5345/…(批量插入允许您指定行和字段分隔符)
-
BCP 还有用于指定
row_term和field_term的选项 -
您只需要为批量插入指定row and field terminator。类似:
BULK INSERT YourTable FROM 'C:\someFileLocation\filename.txt' WITH ( FIELDTERMINATOR = '[**]', ROWTERMINATOR = '[<>]' );。不确定 BulkInsert 是否会抱怨这些分隔符。 @MatBailie 第一篇文章是处理这个问题的好方法
标签: sql-server bcp