Sintomas
Pode exportar uma tabela como um ficheiro CSV através do Microsoft SQL Server Management Studio (SSMS) ou SQL Server Data Tools (SSDT). Por exemplo, pode exportar uma tabela para o formato CSV num projeto SSIS (Integration Services) SQL Server um projeto.
Se selecionar aspas (") como qualificador de texto e se algum registo contiver aspas duplas, as aspas podem não ser escapedas corretamente no resultado.
Exemplo
Dados originais |
big"data |
Resultado esperado |
"big""data" |
Saída real |
"big"data" |
Resolução
A correção para este problema está incluída na seguinte atualização para SQL Server:
Atualização Cumulativa 8 para SQL Server 2017
Após instalar esta atualização, ao exportar uma tabela com o formato CSV, tem de ativar a funcionalidade "Qualificador de Escape" ao definir o respetivo valor para Verdadeiro.
A funcionalidade "Escape Qualifier" tem de ser alterada no SSDT do pacote SSIS guardado quando utiliza o comportamento de saída.
A seguinte captura de ecrã mostra os detalhes da propriedade EscapeQualifier:
Notas:
-
O SQL Server de Importação e Exportação tem a limitação de que não pode ativar esta funcionalidade porque a propriedade EscapeQualifier está desativada por predefinição.
-
Só pode guardar o pacote SSIS através do assistente e modificar essa propriedade através do SSDT para obter esta funcionalidade.
-
Para obter mais informações, consulte Propriedades Personalizadas de Ficheiro Simples - SQL Server SSIS (Integration Services) | Microsoft Learn.
Acerca de SQL Server com builds
Cada nova com build for SQL Server contém todas as correções de segurança e correções de segurança que estavam na com build anterior. Recomendamos que instale a comtrução mais recente para a sua versão SQL Server:
Estado
A Microsoft confirmou que este problema ocorre nos produtos da Microsoft listados na secção "Aplica-se a".
Referências
Saiba mais sobre a terminologia padrão que a Microsoft utiliza para descrever atualizações de software.