Symptomy
Tabelę można wyeksportować jako plik CSV przy użyciu programu Microsoft SQL Server Management Studio (SSMS) lub SQL Server Data Tools (SSDT). Można na przykład wyeksportować tabelę do formatu CSV w projekcie usług integracji SQL Server (SSIS).
Jeśli w kwalifikatorze tekstu zostaną zaznaczone znaki podwójnego cudzysłowu (") i jeśli którykolwiek z rekordów będzie zawierał podwójny cudzysłów, znaki mogą nie zostać poprawnie wyświetlone w wynikach.
Przykład
Oryginalne dane |
big"data |
Oczekiwane dane wyjściowe |
"big""data" |
Rzeczywiste dane wyjściowe |
"big"data" |
Rozwiązanie
Poprawka rozwiązła ten problem jest zawarta w następującej aktualizacji dla SQL Server:
Aktualizacja zbiorcza 8 dla SQL Server 2017 r.
Po zainstalowaniu tej aktualizacji podczas eksportowania tabeli przy użyciu formatu CSV należy włączyć funkcję "Escape Qualifier", ustawiając jej wartość Na prawda.
Funkcja "Kwalifikator ucieczki" musi zostać zmieniona w funkcji SSDT dla zapisanego pakietu SSIS podczas używania zachowania powodującego ucieczkę.
Poniższy zrzut ekranu przedstawia szczegóły właściwości EscapeQualifier:
Uwagi:
-
Kreator SQL Server importu i eksportu ma ograniczenie, że nie można włączyć tej funkcji, ponieważ właściwość EscapeQualifier jest domyślnie wyłączona.
-
Pakiet SSIS można zapisać tylko za pomocą kreatora i zmodyfikować tę właściwość za pośrednictwem funkcji SSDT, aby uzyskać tę funkcję.
-
Aby uzyskać więcej informacji, zobacz Właściwości niestandardowe pliku płaskiego — SQL Server Integration Services (SSIS) | Microsoft Learn.
Informacje o kompilacjach SQL Server
Każda nowa kompilacja dla SQL Server zawiera wszystkie poprawki i poprawki zabezpieczeń, które były w poprzedniej kompilacji. Zalecamy zainstalowanie najnowszej kompilacji dla twojej wersji SQL Server:
Stan
Firma Microsoft potwierdziła, że jest to problem w produktach firmy Microsoft wymienionych w sekcji "Dotyczy".
Informacje
Dowiedz się więcej o standardowej terminologii używanej przez firmę Microsoft do opisywania aktualizacji oprogramowania.