CORRECÇÃO: xp_sendmail gera UNICODE CSV arquivo Formatar

Traduções deste artigo Traduções deste artigo
ID do artigo: 280720 - Exibir os produtos aos quais esse artigo se aplica.
BUG #: 351089 (SHILOH_BUGS)
BUG #: 351894 (SHILOH_BUGS)
Expandir tudo | Recolher tudo

Neste artigo

Sintomas

Se você executa o comando xp_sendmail com um anexo de arquivo no SQL Server 2000 e, em seguida, tente abrir o arquivo .csv com o Microsoft Excel, Microsoft Word ou qualquer outro aplicativo (exceto o bloco de notas), você pode receber um aviso de que o formato de arquivo é irreconhecível.

Causa

SQL Server 2000 gera arquivos no xp_sendmail com um formato UNICODE. No SQL Server 7.0, os arquivos são gerados com um formato ANSI.

Resolução

Para resolver esse problema, obtenha o service pack mais recente para o SQL Server 2000. Para obter informações adicionais, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
290211INF: Como obter o Service Pack mais recente do SQL Server 2000

Como Contornar

A versão em inglês dessa correção deve ter os seguintes atributos de arquivo ou posteriores:
   Date           Version     Size     File name      Platform
   -------------------------------------------------------------
   Nov 21, 2000   8.00.0224   165 KB   Sqlmap70.dll   x86
				

Situação

A Microsoft confirmou que este é um problema no SQL Server 2000. Esse problema foi corrigido primeiro no SQL Server 2000 Service Pack 1.

Mais Informações

Etapas para reproduzir o problema

  1. Execute o seguinte comando:
    execute	master..xp_sendmail
    	@recipients = 'user1',
        	@message = 'Testing',
        	@query = 'select * from sysobjects',
        	@width = 256,
        	@subject = 'testing',
        	@attach_results = 'true',
        	@no_header = 'false',
        	@separator = ',',
        	@attachments = 'test.csv'
    					
  2. Após receber o arquivo test.csv, tente abri-lo no Excel ou Word; você receberá um arquivo irreconhecível Formatar aviso.
  3. Tente as mesmas etapas no SQL Server 7.0 e observe que nenhuma formatação é necessário.
Depois que o hotfix ou service pack for aplicado, os dois pontos seguintes são implementados:
  • Um parâmetro opcional, @ ansi_attachment , é criada para xp_sendmail . Esse parâmetro pode ser verdadeiro (indicando um arquivo de anexo ANSI), False (indicando um arquivo UNICODE) ou não apresentar. Quando este parâmetro for omitido, um valor do Registro, ansi_attachment, é lido.
  • A seguinte chave nova é lido por Sqlmap70.dll para decidir se enviar os anexos como ANSI ou Unicode.

    Para instância padrão:
    HKLM\Software\Microsoft\MSSQLSERVER\SQLMAPI\ansi_attachment
    Para instância nomeada:
    HKLM\Software\Microsoft\Microsoft SQL Server\InstanceNameHere\SQLMAPI\ansi_attachment
  • Se a chave do Registro acima estiver falta, siga as etapas abaixo para criar a chave do Registro. Aviso : se você usar o Editor do Registro incorretamente, poderá causar problemas sérios que talvez exijam a reinstalação do sistema operacional. A Microsoft não garante que você pode resolver problemas resultantes do uso incorreto do Editor do Registro. Use o Editor do registro por sua própria conta e risco.

    1. Inicie o Regedt32.exe.
    2. Para instância padrão, navegue até HKLM\Software\Microsoft\MSSQLSERVER .
      Para instância nomeada, navegue até HKLM\Software\Microsoft SQL Server\InstanceNameHere .
    3. Crie uma nova chave chamada SQLMAPI.
    4. A classe para a chave deixe em branco.
    5. Crie um novo valor denominado ansi_attachment.
    6. Defina o tipo do valor para REG_DWORD.
    7. Defina o valor como 1 para anexos de ANSI, 0 para anexos de Unicode.

Propriedades

ID do artigo: 280720 - Última revisão: sexta-feira, 17 de outubro de 2003 - Revisão: 3.2
A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2000 Standard Edition
Palavras-chave: 
kbmt kbbug kbfix kbqfe kbsqlserv2000sp1fix KB280720 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 280720

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com