Різні комбінації цих параметрів можуть привести до результатів, які є неправильними або частковими даними. Це тому, що Microsoft не вважала, що це досить важливо, щоб виправити ці проблеми. Я пояснюю лише те, що відбувається з файлами CSV, коли надсилаю результати у файл.
Щоб отримати хороші результати, виконайте наступне:
Відкрити нове вікно запиту (нова вкладка / сесія) ... якщо цього не зробити, наведена нижче конфігурація буде втрачена та повернута до стандартних
Напишіть запит для обробки цитати всередині цитати, а також оберніть усі типи рядкових даних у лапки. Також пам’ятайте, що різні граматики СУБД та мови програмування приймають різний синтаксис для екранованої подвійної лапки (якщо цей вихід використовується як вхід для іншої системи). Деякі використовують \". Деякі використовують "". XML використовує ". Можливо, причина, по якій Microsoft вирішила ігнорувати цю функціональність, тому їм не довелося мати справу з аргументами.
.. Якщо Escape Sequence нової системи є "".
SELECT '"' + REPLACE(CAST(column1 AS VARCHAR(MAX)), '"', '""') + '"' FROM table1
.. Якщо Escape Sequence нової системи є \".
SELECT '"' + REPLACE(CAST(column1 AS VARCHAR(MAX)), '"', '\"') + '"' FROM table1
Конфігурація:
Параметри запиту> Результати> Позначено "Включити заголовки стовпців під час копіювання або збереження результатів"
Параметри запиту> Результати> «Цитати рядків, що містять роздільники списку під час збереження .csv результатів» - ЗБІЙ; НЕ ВИКОРИСТОВУВАТИ!
Параметри запиту> Результати> інші не позначені
Параметри запиту> Результати> Текст> розділена комами (налаштування у верхньому правому куті)
Параметри запиту> Результати> Текст> Позначено "Включити заголовки стовпців у набір результатів"
Параметри запиту> Результати> Текст> інші не позначені
Параметри запиту> Результати> Текст> "Максимальна кількість символів, що відображаються в кожному стовпці" - встановлено максимальну довжину, щоб рядки не усікалися.
Запит> Результати до файлу (це перемикання між усіма 3 параметрами)
Виконати запит (F5)
Запит назви файлу звіту
Відкрийте файл, щоб переглянути результати
ПРИМІТКА. Якщо вам потрібно робити це регулярно, вам краще просто розробити програму, яка зробить це за вас у .NET або Java або будь-якою мовою, яка вам зручна. В іншому випадку у вас велика ймовірність помилитися. Тоді надзвичайно знайте про синтаксис системи, до якої ви імпортуєте, перед тим, як визначити експорт із SQL Server.