Проблемы
Таблица экспортируется в виде CSV-файла с помощью Microsoft SQL Server Management Studio (SSMS) или SQL Server Data Tools (SSDT). Например, таблица экспортируется в формат CSV в проекте SQL Server Integration Services (SSIS).
Если в качестве текстового квалификатора выбраны двойные кавычки () и если какие-либо записи содержат двойные кавычки, они могут быть неправильно экранированы в выходных данных.
Пример
Исходные данные |
big"data |
Ожидаемые выходные данные |
"big"data" |
Фактические выходные данные |
"big"data" |
Решение
Исправление этой проблемы включено в следующее обновление для SQL Server:
Накопительный пакет обновления 8 для SQL Server 2017
После установки этого обновления при экспорте таблицы в формате CSV необходимо включить возможность escape-квалификатора, задав для нее значение True.
Возможность escape-квалификатора необходимо изменить в SSDT для сохраненного пакета служб SSIS при использовании режима экранирования.
На следующем снимке экрана показаны сведения о свойстве EscapeQualifier:
Примечания:
-
Мастер SQL Server импорта и экспорта имеет ограничение, которое не позволяет включить эту возможность, так как свойство EscapeQualifier отключено по умолчанию.
-
Пакет служб SSIS можно сохранить только с помощью мастера и изменить это свойство с помощью SSDT, чтобы получить эту возможность.
-
Дополнительные сведения см. в разделе "Настраиваемые свойства неструктурированных файлов SQL Server Integration Services (SSIS) | Microsoft Learn.
Сведения SQL Server сборках
Каждая новая сборка SQL Server содержит все исправления и исправления безопасности, которые были в предыдущей сборке. Рекомендуется установить последнюю сборку для вашей версии SQL Server:
Статус
Корпорация Майкрософт подтверждает наличие этой проблемы в своих продуктах, которые перечислены в разделе "Применяется к".
Ссылки
Сведения о стандартной терминологии, используемой корпорацией Майкрософт для описания обновлений программного обеспечения.