SSIS produz uma sequência Unicode como um código de caractere Shift-JIS para um arquivo de texto
Padrões que resultam em erros
Suponha que uma coluna de tipo nvarchar em uma tabela no SQL Server tenha uma string que não pode ser usada no Shift-JIS. A propósito, se você colocar esses caracteres na coluna varchar, há caracteres que não podem ser usados, como a coluna "ColumnShiftJis" à direita. Substitua-o.
No SSIS, o fluxo é configurado para ler dados da tabela anterior, conforme mostrado na figura e exerí-los para um arquivo de texto.
Suponha que você queira exemá-lo como um arquivo CSV. Uma vez que shift-JIS é frequentemente usado em arquivos CSV, defina a codificação de caractere do arquivo de texto para Shift-JIS.
Se você executar com esta configuração, um erro ocorrerá no momento da saída.
Uma mensagem de erro semelhante à seguinte aparece:
O arquivo de saída também será interrompido no meio do caminho quando o erro ocorreu.
Se você tentar sair como está, será um erro, então tente incorporar a "conversão de dados" no meio.
Converta o tipo de dados de "DT_WSTR" para "DT_STR" e transforme-o em um formulário que pode ser saída para Shift-JIS.
No entanto, se você também executar isso, você terá um erro. Isso ocorre porque o SSIS falha estritamente no processamento implícito que faz com que os dados sejam faltantes. Se você quiser que o SSIS execute o processamento destipado de texto, você precisará especificar explicitamente a substituição de caracteres para todos os caracteres.
Soluções alternativas
Há uma maneira de alterar o tipo de texto usando SQL ao ler de uma tabela em um banco de dados. Se for SQL, é o motor SQL Server que o executa, não o SSIS, para que ele possa funcionar sem erros. A propósito, todos os caracteres que não podem ser usados no Shift-JIS são "?" Convertido em: Esta é uma especificação lateral do SQL Server. Mesmo que não seja SSIS, o resultado é semelhante para todos os sistemas que usam SQL Server.
Abra o ADO NET Tradutor e altere o modo de acesso de dados ao Comando SQL. Agora que você pode inserir SQL, escreva uma instrução Select para recuperar dados do banco de dados. O texto que contém caracteres que não podem ser usados no Shift-JIS é convertido à força para varchar usando o elenco.
Uma vez que caracteres que não podem ser usados no Shift-JIS já foram removidos no momento do fluxo de dados para SSIS, o processamento pode ser passado como ele é.
Você pode ver que o texto foi escrito com sucesso para o CSV. Além disso, todos os caracteres que não podem ser usados no Shift-JIS são "?" Você pode ver que ele foi convertido para: