Copia de seguridad de una sola tabla con sus datos de una base de datos en sql server 2008

94

Quiero obtener una copia de seguridad de una sola tabla con sus datos de una base de datos en SQL Server usando un script.

¿Cómo puedo hacer eso?

EBS
fuente
Asistente de importación / exportación de SQL. Haga clic derecho en su base de datos en SMSS / Choose Item Export
realnumber3012
1
Quiero hacer esto con el guión
EBS
4
por favor acepte la respuesta de
MGOwen

Respuestas:

33

Hay muchas formas de retirar la mesa.

  1. BCP (PROGRAMA DE COPIA A GRANEL)
  2. Generar secuencia de comandos de tabla con datos
  3. Haga una copia de la tabla usando SELECT INTO, ejemplo aquí
  4. GUARDAR datos de tabla directamente en un archivo plano
  5. Exportar datos usando SSIS a cualquier destino
Vijay Hulmani
fuente
10
Si bien este código puede responder a la pregunta, proporcionar un contexto adicional sobre por qué y / o cómo responde la pregunta mejoraría significativamente su valor a largo plazo. Por favor, editar su respuesta a añadir un poco de explicación.
CodeMouse92
Si es para una copia de seguridad diaria, podemos usar la replicación para replicar la tabla que desea respaldar. Luego, haga una copia de seguridad de la base de datos de suscriptores.
DBALUKE HUANG
@ CodeMouse92 De acuerdo. Voté en contra porque la respuesta es corta y carece de explicación.
Cañón Kolob
145
select * into mytable_backup from mytable

Hace una copia de la tabla mytable , y cada fila en ella, llamada mytable_backup .

MGOwen
fuente
9
Es bueno que esta consulta realmente cree la tabla "mytable_backup". No me esperaba eso, y había creado una nueva tabla para hacer una copia de seguridad.
AidanO
Usé muchas copias de seguridad de datos en un esquema diferente, y me di cuenta de que, en determinadas circunstancias, ¡ FALTAN filas ! El objetivo podría estar incompleto. No estoy seguro por qué. Es mejor comprobar el recuento de filas después de dicha copia de seguridad.
Ben
41

Puede utilizar la función "Generar script para objetos de base de datos" en SSMS.

  1. Haga clic derecho en la base de datos de destino
  2. Seleccione Tareas> Generar secuencias de comandos.
  3. Elija la mesa deseada o el objeto específico
  4. Presiona el botón Avanzado
  5. En General, elija el valor en Tipos de datos para crear un script . Puede seleccionar Solo datos, Solo esquema y Esquema y datos . El esquema y los datos incluyen tanto la creación de tablas como los datos reales del script generado.
  6. Haga clic en Siguiente hasta que finalice el asistente

Éste resolvió mi desafío.
Espero que esto también te ayude.

Kent Aguilar
fuente
21

Puede crear un script de tabla junto con sus datos siguiendo los siguientes pasos:

  1. Haga clic derecho en la base de datos.
  2. Seleccione Tareas> Generar scripts ...
  3. Haga clic en Siguiente.
  4. Haga clic en Siguiente.
  5. En Opciones de tabla / vista, establezca Datos de secuencia de comandos en Verdadero; luego haga clic en siguiente.
  6. Seleccione la casilla de verificación Tablas y haga clic en Siguiente.
  7. Seleccione el nombre de su tabla y haga clic en siguiente.
  8. Haga clic en siguiente hasta que finalice el asistente.

Para obtener más información, consulte el blog de Eric Johnson.

Pankaj
fuente
11

Intente utilizar la siguiente consulta que creará la tabla respectiva en la misma o en otra base de datos ("Base de datos").

SELECT * INTO DataBase.dbo.BackUpTable FROM SourceDataBase.dbo.SourceTable
BJ Patel
fuente
1
¿Es diferente a esta respuesta anterior ?
Ofer Zelig
8

Copia de seguridad de una sola tabla con sus datos de una base de datos en sql server 2008

SELECT * INTO  [dbo].[tbl_NewTable] 
FROM [dbo].[tbl_OldTable]
Código
fuente
1
¿Es diferente a esta respuesta anterior ?
Ofer Zelig
3

Coloque la tabla en su propio grupo de archivos. A continuación, puede utilizar la copia de seguridad incorporada de SQL Server normal para realizar una copia de seguridad del grupo de archivos en el que, en efecto, realiza la copia de seguridad de la tabla.

Para hacer una copia de seguridad de un grupo de archivos, consulte: https://docs.microsoft.com/en-us/sql/relational-databases/backup-restore/back-up-files-and-filegroups-sql-server

Para crear una tabla en un grupo de archivos no predeterminado (es fácil), consulte: Crear una tabla en un grupo de archivos que no sea el predeterminado

benjamin moskovits
fuente
3

Esta consulta se ejecuta para mí (para MySQL). mytable_backup debe estar presente antes de que se ejecute esta consulta.

insert into mytable_backup select * from mytable
Umesh Kumar Sharma
fuente
4
La pregunta es sobre SQL Server, no sobre MySQL.
Stephen Kennedy
2

Otro enfoque que puede tomar si necesita hacer una copia de seguridad de una sola tabla de varias tablas en una base de datos es:

  1. Genere un script de tablas específicas desde una base de datos (haga clic con el botón derecho en la base de datos, haga clic en Tarea> Generar scripts ...

  2. Ejecute el script en el editor de consultas. Debe cambiar / agregar la primera línea (USE DatabaseName) en el script a una nueva base de datos, para evitar el error "La base de datos ya existe".

  3. Haga clic con el botón derecho en la base de datos recién creada y haga clic en Tarea> Copia de seguridad ... La copia de seguridad contendrá las tablas seleccionadas de la base de datos original.

Simpa
fuente
0

Para obtener una copia en un archivo en el sistema de archivos local, esta desvencijada utilidad del menú del botón de inicio de Windows funcionó: "C: \ Archivos de programa (x86) \ Microsoft SQL Server \ 110 \ DTS \ Binn \ DTSWizard.exe"

wwmbes
fuente