Sintomi
È possibile esportare una tabella come file CSV usando Microsoft SQL Server Management Studio (SSMS) o SQL Server Data Tools (SSDT). Ad esempio, si esporta una tabella in formato CSV in un progetto di SQL Server Integration Services (SSIS).
Se si selezionano le virgolette doppie (") come qualificatore di testo e se alcuni record contengono virgolette doppie, è possibile che nell'output non venga eseguito correttamente il escape dei segni.
Esempio
Dati originali |
big"data |
Output previsto |
"big""data" |
Output effettivo |
"big"data" |
Risoluzione
La correzione di questo problema è inclusa nel seguente aggiornamento per SQL Server:
Aggiornamento cumulativo 8 per SQL Server 2017
Dopo aver installato questo aggiornamento, quando si esporta una tabella usando il formato CSV, è necessario attivare la funzionalità "Qualificatore Escape" impostando il relativo valore su True.
La funzionalità "Qualificatore Escape" deve essere modificata in SSDT per il pacchetto SSIS salvato quando si usa il comportamento di escape.
Lo screenshot seguente mostra i dettagli della proprietà EscapeQualifier:
Note:
-
L'Importazione/Esportazione guidata SQL Server ha la limitazione che non è possibile attivare questa funzionalità perché la proprietà EscapeQualifier è disabilitata per impostazione predefinita.
-
È possibile salvare il pacchetto SSIS solo tramite la procedura guidata e modificare la proprietà tramite SSDT per ottenere questa funzionalità.
-
Per altre informazioni, vedere Flat File Custom Properties - SQL Server Integration Services (SSIS) | Microsoft Learn.
Informazioni sulle build SQL Server
Ogni nuova build per SQL Server contiene tutti gli aggiornamenti rapidi e le correzioni per la sicurezza inclusi nella build precedente. È consigliabile installare la build più recente per la versione di SQL Server:
Stato
Microsoft ha confermato che questo problema si verifica nei prodotti elencati nella sezione "Si applica a".
Riferimenti
Informazioni sulla terminologia standard utilizzata da Microsoft per descrivere gli aggiornamenti software.