Sei que essa não é a solução exata para a pergunta acima, mas, para mim, foi um pesadelo quando eu estava tentando copiar dados de um banco de dados localizado em um servidor separado para o meu local.
Eu estava tentando fazer isso primeiro exportando dados do servidor para CSV/txt
e importando -os para minha tabela local.
Ambas as soluções: escrever a consulta para importar CSV
ou usar o assistente SSMS Import Data estava sempre produzindo erros (os erros eram muito gerais, dizendo que há um problema de análise). E embora eu não estivesse fazendo nada de especial, basta exportar para CSV
e depois tentar importar CSV
para o local DB
, os erros sempre estavam lá.
Eu estava tentando olhar para a seção de mapeamento e a visualização de dados, mas sempre havia uma grande bagunça. E eu sei que o principal problema estava vindo de uma das table
colunas, que estava contendo JSON
e o SQL
analisador estava tratando isso errado.
Então, finalmente, eu vim com uma solução diferente e quero compartilhá-la, caso outra pessoa tenha um problema semelhante.
O que fiz foi usar o Assistente de Exportação no servidor externo.
Aqui estão as etapas para repetir o mesmo processo:
1) Clique com o botão direito do mouse no banco de dados e selecioneTasks -> Export Data...
2) Quando o Assistente for aberto, escolha Avançar e, no lugar de "Fonte de dados:", escolha "SQL Server Native Client".
No caso de um servidor externo, você provavelmente terá que escolher "Usar autenticação do SQL Server" para o "Modo de autenticação:".
3) Depois de clicar em Avançar , você deve selecionar o destino .
Para isso, selecione novamente "SQL Server Native Client".
Desta vez, você pode fornecer seu local (ou algum outro externo DB
) DB
.
4) Após pressionar o botão Avançar, você tem duas opções para copiar a tabela inteira de uma DB
para outra ou anotar a consulta para especificar os dados exatos a serem copiados. No meu caso, eu não precisava da tabela inteira (era muito grande), mas apenas de uma parte dela, então escolhi "Escrever uma consulta para especificar os dados a serem transferidos".
Sugiro anotar e testar a consulta em um editor de consultas separado antes de passar para o Assistente.
5) E, finalmente, você precisa especificar a tabela de destino onde os dados serão selecionados.
Sugiro deixá-lo como [dbo].[Query]
ou algum Table
nome personalizado , caso você tenha erros ao exportar os dados ou se não tiver certeza sobre os dados e deseja analisá-los mais detalhadamente antes de passar para a tabela exata desejada.
E agora vá direto para o final do Assistente pressionando os botões Avançar / Concluir .
BULK NSERT
ou não tem permissões para isso).