PROBLEMA: DTS assistente poderá não detectar tipo de coluna do Excel para dados mistos no SQL Server

Traduções de Artigos Traduções de Artigos
Artigo: 236605 - Ver produtos para os quais este artigo se aplica.
Expandir tudo | Reduzir tudo

Nesta página

Sintomas

Quando utiliza o Assistente de importação do Microsoft SQL Server Data Transformation Services (DTS) para importar dados de uma folha de cálculo do Microsoft Excel, se uma coluna de texto contém dados que podem ser interpretados como dados mistos (por exemplo, caracteres alfanuméricos que representam dados hexadecimais), iniciais algumas linhas determinam o tipo de dados real utilizado e linhas subsequentes podem ser transferidas como NULL. DTS não fornece uma mensagem de aviso para indicar que algumas linhas não poderão transferir.

Nota Se estiver a utilizar o SQL Server 2005, utilize o SQL Server assistente importação e exportação para efectuar a transformação de dados.

Causa

Este comportamento ocorre por predefinição para o ISAM do Excel. As linhas primeiro 8 determinar o tipo dados da coluna. Por exemplo, se a maioria das linhas primeiros 8 caracteres numéricos, o tipo de dados da coluna é um número. Todos os valores subsequentes que não cabem esse tipo de dados são devolvidos como NULL.

Como contornar

Uma solução é guardar a folha de Excel como um ficheiro de texto e, em seguida, utilizar o Assistente de DTS para importar o ficheiro para o SQL Server.

Mais Informação

Passos para reproduce o comportamento

Por exemplo, crie a seguinte folha de cálculo no Excel:
Reduzir esta tabelaExpandir esta tabela
DecimalHex
11
22
33
44
55
66
77
88
99
10UM
11B
12C
13D
14ELECTRÓNICO
15F
A primeira coluna "Decimal" é formatada como geral e a segunda coluna "HEX" são formatados como texto.

Se carregar esta tabela do Excel para o SQL Server utilizando o Assistente de DTS, linhas 10-15 (valores A-F) são NULL quando carregado na tabela de SQL (a coluna HEX formatada como texto no livro, mas DTS torna um tipo flutuante uma vez que detecta a coluna de origem como DBTYPE_R8).

Referências

Para mais informações, consulte o tópico "SQL Server Data Transformation Services" no SQL Server Books Online.

Propriedades

Artigo: 236605 - Última revisão: 22 de fevereiro de 2007 - Revisão: 6.3
A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 7.0 Standard Edition
  • Microsoft Excel 97 Standard Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL 2005 Server Enterprise
  • Microsoft SQL 2005 Server Workgroup
Palavras-chave: 
kbmt kbdatabase kbprb KB236605 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 revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 236605

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