Импорт CSV-файла в mssql db с массовой вставкой заменяет специальные символы «"øå» на неизвестную кодировку - PullRequest
2 голосов
/ 26 октября 2011

Я пытаюсь импортировать файл csv в базу данных mssql с помощью метода BULK INSERT. Проблема в том, что он содержит специальные символы (норвежские буквы æ, ø и å), и после запуска вставки они заменяются символами, код которых я не знаю.

Если говорить более конкретно, ø заменяется на °, å заменяется на Õ, а æ заменяется на µ.

Я также пытался преобразовать их в UTF-8 перед вставкой, но я понял, что метод BULK INSERT не поддерживает это. Соответствующие кодировки UTF-8 для thenøå затем получили что-то вроде + ©.

Я также пытался использовать функцию импорта мастера, но поскольку у меня есть идентификатор в одном из столбцов, при импорте будет просто вставляться 0 для каждой записи, что делает импорт бесполезным для копирования.

Кто-нибудь знает, как я могу установить кодировку при запуске массовой вставки, так как она отлично работает со столбцом идентификаторов. Я использую MS SQL Server Managent Studio 2008

1 Ответ

3 голосов
/ 26 октября 2011

Я думаю, что есть два пути:

  1. Укажите CODEPAGE = RAW в команде BULK INSERT (см. MSDN ).
  2. Создайте файл формата и укажите параметры сортировки для каждого столбца.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...