Faça backup de uma única tabela com seus dados de um banco de dados no sql server 2008

94

Quero fazer o backup de uma única tabela com seus dados de um banco de dados no SQL Server usando um script.

Como eu posso fazer isso?

EBS
fonte
Assistente de importação / exportação SQL. Clique com o botão direito em seu banco de dados no SMSS / Escolha Exportar Item
realnumber3012
1
Quero fazer isso com script
EBS
4
por favor, aceite a resposta de
MGOwen

Respostas:

33

Há muitas maneiras de retirar a mesa.

  1. BCP (BULK COPY PROGRAM)
  2. Gerar Script de Tabela com dados
  3. Faça uma cópia da tabela usando SELECT INTO, exemplo aqui
  4. SALVE dados da tabela diretamente em um arquivo simples
  5. Exportar dados usando SSIS para qualquer destino
Vijay Hulmani
fonte
10
Embora este código possa responder à pergunta, fornecer contexto adicional sobre por que e / ou como ele responde à pergunta melhoraria significativamente seu valor a longo prazo. Por favor edite sua resposta para adicionar alguma explicação.
CodeMouse92
Se for para backup diário, podemos usar a replicação para replicar a tabela que você deseja fazer backup. Em seguida, faça backup do banco de dados do assinante.
DBALUKE HUANG
@ CodeMouse92 Concordado. Eu votei contra porque a resposta é curta e carece de explicação.
Kolob Canyon
146
select * into mytable_backup from mytable

Faz uma cópia da tabela mytable e de cada linha dela, chamada mytable_backup .

MGOwen
fonte
9
É bom que esta consulta crie a tabela "mytable_backup". Eu não esperava por isso e criei uma nova tabela para fazer o backup.
AidanO
Usei isso muito para fazer backup de dados em um esquema diferente e acabei de notar que, em certas circunstâncias, existem linhas AUSENTES ! O alvo pode estar incompleto. Não sei por quê. Melhor verificar a contagem de linhas após esse backup.
Ben
IMPORTANTE: a tabela de cópia não possui índices, chaves ou restrições da tabela original! Portanto, ele realmente não "copia a tabela (inteiramente) com seus dados", mas apenas os campos e os dados.
sdlins
42

Você pode usar o recurso "Gerar script para objetos de banco de dados" no SSMS.

  1. Clique com o botão direito no banco de dados de destino
  2. Selecione Tarefas> Gerar Scripts
  3. Escolha a mesa desejada ou objeto específico
  4. Clique no botão Avançado
  5. Em Geral, escolha o valor em Tipos de dados para script . Você pode selecionar Somente dados, Somente esquema e Esquema e dados . O esquema e os dados incluem a criação da tabela e os dados reais no script gerado.
  6. Clique em Avançar até que o assistente seja concluído

Este resolveu meu desafio.
Espero que isso ajude você também.

Kent Aguilar
fonte
21

Você pode criar um script de tabela junto com seus dados usando as seguintes etapas:

  1. Clique com o botão direito no banco de dados.
  2. Selecione Tarefas> Gerar scripts ...
  3. Clique próximo.
  4. Clique próximo.
  5. Em Table / View Options, defina Script Data como True; em seguida, clique em próximo.
  6. Selecione a caixa de seleção Tabelas e clique em Avançar.
  7. Selecione o nome da sua mesa e clique em Avançar.
  8. Clique em Avançar até que o assistente seja concluído.

Para obter mais informações, consulte o blog de Eric Johnson.

Pankaj
fonte
11

Tente usar a seguinte consulta, que criará a respectiva tabela no mesmo ou em outro banco de dados ("Banco de dados").

SELECT * INTO DataBase.dbo.BackUpTable FROM SourceDataBase.dbo.SourceTable
BJ Patel
fonte
1
É diferente da resposta anterior ?
Ofer Zelig
8

Faça backup de uma única tabela com seus dados de um banco de dados no sql server 2008

SELECT * INTO  [dbo].[tbl_NewTable] 
FROM [dbo].[tbl_OldTable]
Código
fonte
1
É diferente da resposta anterior ?
Ofer Zelig
3

Coloque a tabela em seu próprio grupo de arquivos. Você pode então usar o backup regular integrado do SQL Server para fazer backup do grupo de arquivos no qual, na verdade, faz backup da tabela.

Para fazer backup de um grupo de arquivos, consulte: https://docs.microsoft.com/en-us/sql/relational-databases/backup-restore/back-up-files-and-filegroups-sql-server

Para criar uma tabela em um grupo de arquivos não padrão (é fácil), consulte: Criar uma tabela em um grupo de arquivos diferente do padrão

benjamin moskovits
fonte
3

Esta consulta é executada para mim (para MySQL). mytable_backup deve estar presente antes da execução desta consulta.

insert into mytable_backup select * from mytable
Umesh Kumar Sharma
fonte
4
A questão é sobre o SQL Server, não sobre o MySQL.
Stephen Kennedy
2

Outra abordagem que você pode adotar se precisar fazer backup de uma única tabela a partir de várias tabelas em um banco de dados é:

  1. Gerar script de tabela (s) específica (s) de um banco de dados (clique com o botão direito do mouse no banco de dados, clique em Tarefa> Gerar Scripts ...

  2. Execute o script no editor de consultas. Você deve alterar / adicionar a primeira linha (USE DatabaseName) no script para um novo banco de dados, para evitar o erro "Banco de dados já existe".

  3. Clique com o botão direito do mouse no banco de dados recém-criado e clique em Tarefa> Backup ... O backup conterá a (s) tabela (s) selecionada (s) do banco de dados original.

Simpa
fonte
0

Para obter uma cópia em um arquivo no sistema de arquivos local, este utilitário instável do menu do botão Iniciar do Windows funcionou: "C: \ Arquivos de programas (x86) \ Microsoft SQL Server \ 110 \ DTS \ Binn \ DTSWizard.exe"

wwmbes
fonte