2012-08-09 16 views
26

Tengo una base de datos de SQL Server para la que quiero generar secuencias de comandos de datos, así como el esquema de ambos. Intenté Tasks -> Generate Scripts -> Script all objects in the selected database pero no da el .sql para los datos en sí.Generar secuencia de comandos para el esquema y los datos

¿Cómo generamos la base de datos .sql tanto para los datos como para el esquema? Para sugerir algún método fácil como una herramienta o algo que pueda ser utilizado fácilmente

+0

En el siguiente paso de los "Generar guión Wizards" hay una opción que es "falso" como predeterminado dice "escritura de datos", el cambio i t a "verdadero". – Lamak

+0

¿Por qué no hace una copia de seguridad de la base de datos? –

Respuesta

35

Copia de seguridad de base de datos/Exportación

Hay dos formas de hacer copias/exportar una base de datos de SQL Server Management Studio de SQL Server:

  1. base de datos Haga clic derecho → Tareas → → luego generar secuencias de comandos DB → Cambiar la opción de “escritura de datos” a la verdadera → ...

  2. derecho clic datab ase → Tareas → Copia de seguridad → ...

El primer método crea un archivo .sql que luego debemos ejecutar. El problema con este método es que el archivo .sql puede ser demasiado grande para abrirse con SQL Server Management Studio. En ese caso, necesitamos usar la utilidad sqlcmd (debería estar ya instalada si tenemos SQL Server MS). Instrucciones a continuación.

El segundo método crea un archivo .back que luego es fácil de importar en una base de datos vacía.

Importación de base de datos

Si tenemos un archivo .sql y no es demasiado grande que sólo puede abrir con MS SQL Server y ejecutarlo.

Si tenemos un archivo .sql pero es demasiado grande para ser abierto con MS SQL Server tenemos que utilizar sqlcmd así:

>sqlcmd -i C:\panels_QA28July11.sql -o C:\PanelsImportResult.txt 

El parámetro después -i es el archivo a importar. El parámetro después de -o es dónde guardar la salida. Podemos omitir el segundo parámetro si queremos ver el proceso en la pantalla.

De forma predeterminada, utilizará la máquina local y el servidor de base de datos local. Si queremos usar una máquina y un servidor diferentes, usamos la opción -S.

+5

¿Hay alguna manera de crear el script usando sqlcmd? Gracias. – manolowar

34

Haga clic derecho sobre db => Tareas => generar secuencias de comandos => En "Establecer opciones de secuencias de comandos:.. Haga clic en Avanzadas, encontrar Types of data to script Se puede elegir entre Data only, Script and data y Schema only El valor predeterminado es Schema only

+3

Esto funciona para SQL Server 2012. ¡Gracias! –

21

Imágenes conversaciones mejor que las palabras, :)

enter image description here enter image description here

+1

¿Puede esto hacerse con la utilidad * sqlcmd *? – LoneWOLFs

Cuestiones relacionadas