Массовый импорт SQL Server с форматным файлом данных UTF-8 - PullRequest
4 голосов
/ 25 февраля 2012

Я имел в виду следующую страницу:

http://msdn.microsoft.com/en-us/library/ms178129.aspx

Я просто хочу массово импортировать некоторые данные из файла, содержащего символы Юникода. Я попытался кодировать фактический файл данных в UC-2, UTF-8 и т. Д., Но ничего не работает. Я также изменил формат файла для использования SQLNCHAR, но все равно он не работает и выдает ошибку:

Ошибка преобразования данных массовой загрузки (усечение) для строки 1, столбца 1

Я думаю, что это связано с этим утверждением по ссылке выше:

Чтобы файл формата работал с файлом данных символов Unicode, все поля ввода должны быть текстовыми строками Unicode (то есть, либо фиксированного размера или символьно-завершенные строки Юникода).

Что именно это значит? Я думал, что это означает, что каждая строка символов должна быть фиксированными 2 байтами, которые должна обрабатывать кодировка файла в UCS-2 ???

Ответы [ 2 ]

6 голосов
/ 29 февраля 2012

Этот пост был очень полезным и решил мою проблему:

http://blogs.msdn.com/b/joaol/archive/2008/11/27/bulk-insert-using-unicode-data-files.aspx

Что еще нужно отметить - класс данных Java генерировал файл данных.Чтобы вышеуказанное решение работало, файл данных необходимо кодировать в UTF-16LE , который можно установить в конструкторе OutputStreamWriter (например).

0 голосов
/ 23 июля 2016

В SQL Server 2012 я импортировал файл .csv, сохраненный с помощью Notepad ++, в UCS-2 со специальными символами испанского языка

...