Compartir por


Asistente para generar scripts

Se aplica a: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

Este artículo le enseña a utilizar el Asistente para generar scripts para crear scripts con el fin de transferir una base de datos entre instancias de SQL Server, Base de datos de Azure SQL o Azure SQL Managed Instance.

Puede generar scripts para una base de datos de SQL Server en la red local o a partir de Azure SQL. Los scripts generados se pueden ejecutar en otra instancia de SQL Server o Azure SQL. Es posible crear scripts para una base de datos completa o limitarlos a objetos específicos.

Para un tutorial más detallado sobre cómo usar el Asistente para generar scripts, consulte Tutorial: Asistente para generar scripts.

Requisitos previos

Las bases de datos de origen y destino pueden estar en Base de datos de Azure SQL o Azure SQL Managed Instance, o en una instancia del motor de base de datos que ejecute SQL Server 2005 (9.x) o versiones posteriores.

Permisos

El permiso mínimo para generar scripts es la pertenencia al rol fijo de base de datos db_ddladmin en la base de datos de origen.

Utilice este asistente para generar scripts

  1. En Explorador de objetos, expanda el nodo de la instancia que contiene la base de datos que se va a incluir en el script.

  2. Haga clic con el botón derecho en la base de datos que desea crear scripts y seleccione Tareas>Generar scripts.

    Captura de pantalla del Asistente para generar scripts.

  3. Complete los cuadros de diálogo del asistente:

Página de introducción

Esta página describe los pasos para generar un script.

No volver a mostrar esta página: omite esta página la próxima vez que inicie el asistente Generar scripts.

Captura de pantalla de la página introducción.

Página Elegir objetos

Use esta página para elegir los objetos que desea incluir en los scripts generados por el asistente.

Opción de incluir en el script toda la base de datos: seleccione esta opción para generar scripts para todos los objetos de la base de datos e incluir un script para la propia base de datos.

Captura de pantalla de la base de datos completa del script.

Seleccionar objetos de base de datos específicos: seleccione esta opción para limitar el asistente con el fin de que genere scripts solo para los objetos concretos de la base de datos que elija:

  • Objetos de base de datos : seleccione al menos un objeto para incluirlo en el script.

  • Seleccionar todo : activa todas las casillas disponibles.

  • Anular la selección : desactiva todas las casillas. Para poder continuar, deberá seleccionar al menos un objeto de base de datos.

    Captura de pantalla del script específico.

Página Establecer opciones de scripting

Utilice esta página para especificar si desea que el asistente guarde los scripts en la ubicación de su elección.

Opciones : si quiere que el asistente guarde los scripts en la ubicación que elija, seleccione Guardar scripts en una ubicación específica. Posteriormente, podrá ejecutar los scripts con respecto a una instancia del motor de base de datos o SQL Database.

Guardar scripts en una ubicación específica: guarda uno o varios archivos de script Transact-SQL en una ubicación que especifique.

Captura de pantalla de Guardar como cuaderno.

  • Guardar como cuaderno : guarde el script en uno o varios archivos .sql. Seleccione el botón Examinar ( ) para especificar el nombre y la ubicación del archivo.

  • Guardar como archivo de script: guarde el script en uno o varios archivos .sql. Seleccione el botón Examinar ( ) para especificar el nombre y la ubicación del archivo. Active la casilla Sobrescribir el archivo existente para reemplazar el archivo si ya existe uno con el mismo nombre. Seleccione la opción de un archivo de script único o un archivo de script por objeto para especificar cómo se deben generar los scripts. Seleccione Texto Unicode o Texto ANSI para especificar el tipo de texto que se debe usar en el script.

  • Guardar en el Portapapeles : guarda el script Transact-SQL en el Portapapeles.

  • Abrir en nueva ventana de consulta: genera el script en una ventana del editor de consultas del motor de base de datos. Si no hay ninguna ventana de editor abierta, se abre una nueva ventana como destino del script.

  • Opciones avanzadas: muestra el cuadro de diálogo Opciones de scripting avanzadas donde puede seleccionar las opciones avanzadas para generar scripts.

Página Opciones de scripting avanzadas

Use esta página para especificar cómo desea que este asistente genere los scripts. Hay disponibles numerosas opciones. Las opciones se atenúan si no se admiten en la versión de SQL Server o SQL Database especificada en Tipo de motor de base de datos.

Captura de pantalla de opciones avanzadas.

Opciones : para especificar las opciones avanzadas, seleccione un valor de la lista de opciones de configuración disponibles, situada a la derecha de cada opción.

General: las opciones siguientes se aplican a todo el script.

  • Relleno ANSI: incluye ANSI PADDING ON en el script. El valor predeterminado es False.

  • Anexar a archivo : si es True, este script se agrega al final de un script existente, especificado en la página Establecer opciones de scripting . Si es False, el nuevo script sobrescribe un script anterior. El valor predeterminado es False.

  • Comprobar la existencia de objetos: si es true, agrega la comprobación de existencia antes de generar la instrucción CREATE de los objetos SQL (por ejemplo, tablas, vistas, funciones o procedimientos almacenados). La instrucción CREATE se encapsula en una instrucción IF. Si sabe que el destino está limpio, el script será mucho más limpio. Si NO espera que existan objetos en el destino, obtendrá un error. El valor predeterminado es False.

  • Continuar scripting en caso de error: si es false, el script se detendrá si se produce un error. Si es true, el scripting continuará. El valor predeterminado es False.

  • Convertir UDDT en tipos base : si es True, los tipos de datos definidos por el usuario (UDDT) se convierten en los tipos de datos base subyacentes que se usaron para crearlos. Use True cuando el UDDT no exista en la base de datos en la que se ejecuta el script. Si es False, se usan los UDDT. El valor predeterminado es False.

  • Generar script para objetos dependientes : genera un script para cualquier objeto que deba estar presente cuando se ejecute el script para el objeto seleccionado. El valor predeterminado es True para la opción Script completa de la base de datos y False para Seleccionar objetos de base de datos específicos.

  • Incluir encabezados descriptivos : si es True, se agregarán comentarios descriptivos al script, que lo separarán en secciones para cada objeto. El valor predeterminado es False.

  • Incluir IF NOT EXISTS: si es True, el script incluirá una instrucción para comprobar si el objeto ya existe en la base de datos y no intentará crear un nuevo objeto si este ya existe. El valor predeterminado es False.

  • Incluir nombres de restricción del sistema: si es False, el valor predeterminado de las restricciones que se denominaron automáticamente en la base de datos de origen se vuelven a denominar automáticamente en la base de datos de destino. Si es True, las restricciones tienen el mismo nombre en las bases de datos de origen y de destino.

  • Incluir instrucciones no compatibles: si es False, el script no contiene las instrucciones para los objetos que no se admiten en la versión de servidor o tipo de motor seleccionados. Si es True, el script contiene los objetos no compatibles. Cada instrucción para un objeto no compatible tiene un comentario que indica que se debe editar la instrucción antes de que el script pueda ejecutarse con respecto a la versión del SQL Server o tipo de motor seleccionados. El valor predeterminado es False.

  • Nombres de objeto de certificación de esquema : incluye el nombre de esquema en el nombre de los objetos que se crean. El valor predeterminado es True.

  • Incluir enlaces : genera un script para enlazar los objetos predeterminados y de regla. El valor predeterminado es False. Para obtener más información, vea CREATE DEFAULT (Transact-SQL) y CREATE RULE (Transact-SQL).

  • Incluir intercalación : incluye información de intercalación en el script. El valor predeterminado es False. Para obtener más información, consulte Soporte técnico de intercalación y Unicode.

  • Generar script de valores predeterminados : incluye los objetos predeterminados que se usan para establecer los valores en las columnas de tabla. El valor predeterminado es True. Para obtener más información, consulte Especificar valores predeterminados para columnas.

  • Incluir DROP y CREATE en el script: Si es Incluir CREATE en el script, se incluyen las instrucciones Transact-SQL para crear objetos. Si es Incluir DROP en el script, se incluyen las instrucciones Transact-SQL para quitar objetos. Si es Incluir DROP y CREATE en el script, se incluye la instrucción DROP de Transact-SQL en el script, seguida de la instrucción CREATE, por cada objeto del script. El valor predeterminado es Incluir CREATE en el script.

  • Generar script de propiedades extendidas : incluye propiedades extendidas en el script si el objeto tiene propiedades extendidas. El valor predeterminado es True.

  • Script para tipo de motor : crea un script que se puede ejecutar en el tipo seleccionado de SQL Database o en una instancia del motor de base de datos de SQL Server. Los objetos no admitidos en el tipo especificado no se incluyen en el script. El valor predeterminado es el tipo del servidor de origen.

  • Script para versión de servidor : crea un script que se puede ejecutar en la versión seleccionada de SQL Server. Las características nuevas de una versión no se pueden incluir en scripts para versiones anteriores. El valor predeterminado es la versión del servidor de origen.

  • Incluir inicios de sesión en el script : cuando el objeto que se debe incluir en un script es un usuario de base de datos, esta opción crea los inicios de sesión de los que depende el usuario. El valor predeterminado es False.

  • Incluir permisos de objeto en el script : incluye scripts para establecer permisos en los objetos de la base de datos. El valor predeterminado es False.

  • Incluir estadísticas en el script : si se establece el valor Incluir estadísticas en el script, esta opción incluye la instrucción CREATE STATISTICS para volver a crear estadísticas del objeto. La opción Incluir estadísticas e histogramas en el script también crea información de histogramas. El valor predeterminado es No incluir estadísticas en el script. Para más información, consulte CREATE STATISTICS (Transact-SQL).

  • Incluir USE DATABASE en el script: agrega la instrucción USE DATABASE al script. Para asegurarse de que se creen objetos de base de datos en la base de datos correcta, incluya la instrucción USE DATABASE. Si espera utilizar el script en una base de datos diferente, seleccione False para omitir la instrucción USE DATABASE. El valor predeterminado es True. Para más información, consulte USE (Transact-SQL).

  • Tipos de datos para generar por script: selecciona lo que se debe generar por script: Solo datos, Solo esquema o ambos. El valor predeterminado Solo esquema.

Opciones de tabla o vista : las siguientes opciones solo se aplican a scripts para tablas o vistas.

  • Generar script de seguimiento de cambios: incluye en el script el seguimiento de cambios si se ha habilitado en la base de datos de origen o en las tablas de la base de datos de origen. El valor predeterminado es False. Para obtener más información, vea Acerca del seguimiento de cambios (SQL Server).

  • Incluir restricciones CHECK en el script: agrega restricciones CHECK al script. El valor predeterminado es True. Las restricciones CHECK requieren datos que se escriban en una tabla para cumplir con una condición especificada. Para más información, consulte Restricciones UNIQUE y CHECK.

  • Incluir opciones de compresión de datos en el script: incluye las opciones de compresión de datos en el script, si se han configurado en la base de datos de origen o en las tablas de la base de datos de origen. Para obtener más información, consulte Compresión de datos. El valor predeterminado es False.

  • Generar script de claves externas : agrega claves externas al script. El valor predeterminado es True. Las claves externas indican y exigen relaciones entre tablas.

  • Generar script de índices de texto completo : incluye en el script la creación de índices de texto completo. El valor predeterminado es False.

  • Generar script de índices : incluye en el script la creación de índices. El valor predeterminado es True para la opción Script completa de la base de datos y False para Seleccionar objetos de base de datos específicos. Los índices ayudan a encontrar rápidamente los datos.

  • Generar script de claves principales : incluye en el script la creación de claves principales en las tablas. El valor predeterminado es True. Las claves principales identifican de forma exclusiva cada fila de una tabla.

  • Generar script de desencadenadores : incluye en el script la creación de desencadenadores DML en las tablas. El valor predeterminado es False. Un desencadenador DML es una acción programada para ejecutarse cuando se produce un evento DML (lenguaje de manipulación de datos) en el servidor de base de datos. Para más información, consulte DML Triggers.

  • Generar script de claves únicas : incluye en el script la creación de claves únicas en las tablas. Las claves únicas evitan que se especifiquen datos duplicados. El valor predeterminado es True. Para más información, consulte Restricciones UNIQUE y CHECK.

Página de resumen

Captura de pantalla del resumen de GS.

En esta página se resumen las opciones que ha seleccionado en este asistente. Para cambiar una opción, seleccione Anterior. Para empezar a generar scripts, seleccione Siguiente.

Revisar opciones seleccionadas : muestra las selecciones que ha realizado en cada página del asistente. Expanda un nodo para ver las opciones seleccionadas de la página correspondiente.

Página Guardar scripts

Use esta página para supervisar el progreso del asistente a medida que se produce.

Detalles : vea en la columna Acción el progreso del asistente. Después de que el asistente genere los scripts, guarda los scripts en un archivo. Cuando cada uno de estos pasos se haya completado, seleccione el valor de la columna Resultado para ver el resultado del paso correspondiente.

Guardar informe: seleccione esta opción para guardar los resultados del progreso del asistente en un archivo.

Cancelar: seleccione esta opción para cerrar el asistente antes de que se complete el procesamiento, o si se produce un error.

Terminar: seleccione esta opción para cerrar el asistente después de que se complete el procesamiento o si se produce un error.

Guardar scripts

Captura de pantalla de Finalizar.

Si todos los valores de configuración son correctos, la configuración finaliza correctamente.

Generar scripts en Azure Synapse Analytics

Si la sintaxis generada al usar "Script como..." no se parece a la sintaxis de Azure Synapse Analytics o si recibe un mensaje de error, es posible que deba configurar las opciones de scripting de SQL Server Management Studio en Azure Synapse Analytics.

Cómo establecer opciones de scripting predeterminadas en el Almacenamiento de datos SQL

Para generar un script de objetos con la sintaxis de Azure Synapse Analytics , establezca la opción de scripting predeterminada en Azure Synapse Analytics , tal y como se indica a continuación:

  1. Seleccione Herramientas y, luego, Opciones.
  2. Seleccione Explorador de objetos de SQL Server y Script.
  3. En Opciones de versión, establezca Coincidir configuración del script con origen en False.
    1. Establezca Script para tipo de motor de base de datos en Microsoft Azure SQL Database Edition.
    2. En el caso de los grupos de SQL dedicados en Azure Synapse Analytics, establezca Script para la edición del motor de base de datos en Microsoft Azure SQL Data Warehouse Edition.
  4. Seleccione Aceptar.

Cómo generar scripts para SQL Data Warehouse cuando no es la opción de scripting predeterminada

Si establece el Azure Synapse Analytics como la opción de scripting predeterminada, como se indica anteriormente, puede ignorar estas instrucciones, aunque si decide usar unas opciones de scripting predeterminadas diferentes, es posible que se produzca un error. Para evitar errores, siga estos pasos para generar scripts para el Azure Synapse Analytics:

  1. En el Explorador de objetos, haga clic con el botón derecho en el grupo de SQL dedicado en Bases de datos.
  2. Seleccione Generar scripts.
  3. Elija los objetos de los que desea generar un script.
  4. En Opciones de scripting, seleccione Opciones avanzadas. En General, establezca lo siguiente:
    1. Script para el tipo de motor de base de datos: Microsoft Azure SQL Database.
    2. Script para la edición del motor de base de datos: Microsoft Azure SQL Data Warehouse Edition.
  5. Seleccione Guardar scripts y, luego, Finalizar.

No se conservan las opciones establecidas en el paso 4. Si prefiere que se conserven estas opciones, siga las instrucciones de Cómo establecer opciones de scripting predeterminadas en el Almacenamiento de datos SQL.