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?


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

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 .


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.


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.


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

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


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

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.


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"

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.