Мне нужно для массовой вставки в SQL-Server
Файл, разделенный запятыми.Мои данные (данные опроса, где у каждого человека есть строка для хранения ответов, заканчивающихся vblf
) поступают из Server-Send-Event
, и я транслирую их в текстовый файл.Я делаю следующую трансформацию с данными для защиты формата:
Dim allText As String = File.ReadAllText("C:\_downloaded Data\new.csv")
allText = allText.Replace("data:[", String.Empty)
allText = allText.Replace(vbLf, String.Empty)
allText = allText.Replace("]", Environment.NewLine)
Using output As StreamWriter = New StreamWriter("C:\_downloaded Data\new.csv")
output.WriteLine(allText)
End Using
Поскольку данные имеют формат data:[1,asdf,3,test@gmail.de]
, я удаляю data:[
, затем я удаляю все vbLF
, так как я делаюне знаю, если некоторые находятся не в том месте, у меня там тоже есть текст, и в самом конце я заменяю ]
на NewLine
, так как в моем коде вставки:
BULK INSERT insert_Table_1 FROM 'C:\_downloaded Data\new.csv'
With (FIELDTERMINATOR = ',', ROWTERMINATOR = '\r\n')
я использую какROWTERMINATOR \r\n
.Данные для импорта выглядят нормально в пределах csv
![enter image description here](https://i.stack.imgur.com/dl6U5.png)
Но когда я вставляю их в SQL-сервер (где \n
и 0x0a
не работает и дает мне Bulk load: An unexpected end of file was encountered in the data file. error
) данные в таблице выглядят так:
![enter image description here](https://i.stack.imgur.com/MYkHr.png)
и я понятия не имею, почему.Есть ли какая-либо ошибка в коде .net (также приветствуются решения на c #).Я не могу найти некоторые в коде импорта.