Este artículo explicará los pasos para importar y exportar datos utilizando el Asistente de importación y exportación de SQL Server.
Dependiendo de las opciones que se seleccionen en el Asistente de importación y exportación de SQL Server, algunos pasos pueden ser diferentes a los descritos en este artículo.
Para el propósito de este ejemplo, se mostrará la exportación de datos de la base de datos de SQL Server a un archivo de Excel.
Hay varias formas de iniciar el Asistente de importación y exportación de SQL Server:
- Utilizando el menú Inicio
- Utilizando el símbolo del sistema
- Utilizando SQL Server Management Studio
- Utilizando Visual Studio con SQL Server Data Tools
Menú Inicio
En el menú Inicio, escriba la palabra Importar o Exportar y elija una de las ofrecidas:
O bien, en el menú Inicio bajo el Microsoft SQL Server 2017, elija una de las opciones ofrecidas:
- Importar y exportar datos de SQL Server 2017 (32 bits)
- Importar y exportar datos de SQL Server 2017 (64-bits)
Solicitud de comando
En la solicitud de comando, escriba lo siguiente: C:\NArchivos de Programa\NMicrosoft SQL Server\140\DTS\Binn\ DTSWizard.exe para la versión de 64 bits:
O bien, escriba lo siguiente C:\NArchivos de programa (x86)\NMicrosoft SQL Server140\DTS\Binn DTSWizard.exe para la versión de 32 bits.
O bien, vaya a las ubicaciones mencionadas anteriormente y, desde allí, ejecute DTSWizard.exe:
SQL Server Management Studio (SSMS)
Para iniciar el Asistente de Importación y Exportación de SQL Server utilizando SSMS, vaya al Explorador de Objetos, haga clic con el botón derecho del ratón en una base de datos para la que desee exportar o importar datos; en el menú contextual del submenú Tarea, elija la opción Importar datos o Exportar datos:
La última versión de SSMS se puede descargar desde la página de descarga de SQL Server Management Studio (SSMS) page
SQL Server Data Tools (SSDT)
Otra forma de lanzar el Asistente de Importación y Exportación de SQL Server es utilizando SQL Server Data Tools (SSDT) a través de Visual Studio.
Las Herramientas de datos de SQL Server (SSDT) pueden descargarse desde la página de descarga de Herramientas de datos de SQL Server (SSDT):
En el proyecto de Servicios de integración:
Vaya al menú Proyecto y elija la opción Asistente de importación y exportación de SSIS:
O en el Explorador de soluciones, haga clic con el botón derecho en la carpeta SSIS Packages y, en el menú contextual, elija la opción Asistente de importación y exportación de SSIS:
El mensaje de advertencia común que aparece cuando se utiliza el Asistente de importación y exportación de SQL Server es:
La operación no pudo completarse.
«INFORMACIÓN ADICIONAL:
El proveedor ‘Microsoft.ACE.OLEDB.12.0’ no está registrado en la máquina local. (Sistema.Data)»
Esto ocurre por la elección de una versión incorrecta (32 bits o 64 bits) del Asistente de importación y exportación de SQL Server. Por ejemplo, si se exportan datos de la versión de 64 bits de SQL Server y se utiliza el Asistente de importación y exportación de SQL Server a través de SSMS, que es una aplicación de 32 bits, y se incluye la versión de 32 bits del Asistente de importación y exportación de SQL Server y, debido a ello, aparecerá el mensaje de advertencia anterior. Para resolverlo, inicie la versión de 64 bits del Asistente de importación y exportación de SQL Server.
Tenga en cuenta que SQL Server Data Tools (SSDT) es una aplicación de 32 bits también.
Además, cuando se utilice el Asistente de importación y exportación de SQL Server, asegúrese de que tiene los permisos adecuados, ya que, de lo contrario, puede aparecer uno de los siguientes mensajes:
Puede encontrar más información sobre los permisos necesarios para utilizar el Asistente de importación y exportación de SQL Server con éxito en esta página
El Asistente de importación y exportación de SQL Server utiliza SQL Server Integration Services (SSIS) para copiar datos. El Asistente de Importación y Exportación de SQL Server crea un paquete SSIS en la memoria mientras usted establece las opciones en el asistente. Al final, proporciona una opción para guardar el paquete SSIS:
Se puede encontrar más información sobre el paquete SSIS en la página de SQL Server Integration Services.
Después de lanzar la página de bienvenida del Asistente de importación y exportación de SQL Server, aparecerá lo siguiente:
Para evitar que esta página aparezca la próxima vez que se lance el Asistente de importación y exportación de SQL Server, marque la casilla No volver a mostrar esta página de inicio. casilla de verificación.
Para continuar, haga clic en el botón Next, se mostrará la página Choose a Data Source:
En esta página, se debe proporcionar la información sobre la fuente de datos y cómo conectarse a la misma.
Desde el cuadro combinado Fuente de datos, se selecciona el proveedor de datos que se conectará a la fuente de datos. El nombre del proveedor de datos suele contener un nombre de la fuente de datos. Por ejemplo, el controlador de datos para conectarse a SQL Server es SQL Server Native Client 11.0 o para conectarse a los archivos de Excel es Microsoft Excel, etc.
El cuadro combinado Origen de datos enumera sólo los proveedores de datos que están instalados en su máquina. Además, si se utiliza el Asistente de importación y exportación de SQL Server de 64 bits en el cuadro combinado Origen de datos no aparecerán los proveedores de 32 bits instalados.
Al pulsar la tecla F1 del teclado mientras se está en cualquier página del Asistente de importación y exportación de SQL Server se abrirá la documentación correspondiente a esa página.
Lo mismo puede conseguirse haciendo clic en el botón Ayuda de las páginas del Asistente de importación y exportación de SQL Server:
Las opciones que se mostrarán en las páginas del Asistente de importación y exportación de SQL Server dependen del origen de datos seleccionado en el cuadro combinado Origen de datos.
En nuestro ejemplo, se utilizará el proveedor SQL Server Native Client 11.0.
En el cuadro combinado Nombre del servidor, seleccione la instancia de SQL Server que contiene los datos de origen.
Nota: Si se trabaja con varios servidores o en red, es mejor introducir el nombre del servidor en lugar de desplegar el cuadro combinado, ya que puede tardar mucho en listar todos los servidores disponibles y puede provocar el estado No responde:
En la parte de Autenticación, elija cómo conectarse a la fuente de datos, mediante la autenticación de Windows o SQL Server.
En el cuadro combinado Base de datos, seleccione una base de datos desde la que desee exportar los datos:
Cuando todo esté configurado en la página Elegir un origen de datos, pulse el botón Siguiente para continuar. La siguiente página del Asistente de importación y exportación de SQL Server es la página Elegir un destino:
En esta página, se debe proporcionar la información sobre dónde se colocarán los datos y cómo conectar con el destino.
Para especificar el destino desde el cuadro combinado Destino se selecciona el proveedor que importará los datos al destino.
Un número de opciones que se mostrarán en esta página depende del proveedor seleccionado en el cuadro combinado Destino.
Para el propósito de este artículo, se seleccionará el proveedor de Microsoft Excel en el cuadro combinado Destino para importar datos al archivo de Microsoft Excel:
A partir del nombre del proveedor, se puede determinar a qué destino está destinado. Por ejemplo, el proveedor de Microsoft Access (Microsoft Access Database Engine) está destinado a importar datos a Microsoft Access, el proveedor de datos de .Net Farmworker para Oracle es para importar la base de datos de Oracle, etc.
El cuadro combinado Destino enumera sólo los proveedores de datos que están instalados en su máquina. Además, si se utiliza el Asistente de importación y exportación de SQL Server de 64 bits en el cuadro combinado Destino no aparecerán los proveedores de 32 bits instalados.
En cuanto se elija el proveedor en el cuadro combinado Destino, aparecerán opciones adicionales de configuración.
En el cuadro de ruta del archivo de Excel, escriba el destino al archivo de Excel, por ejemplo:
- Para el destino en la máquina local: C:\NUsers\Zivko\NDesktop\NExportData.xlsx
- Para el destino en la red: \ ~ – Ejemplo de Excel\ ~ Exportar datos.xlsx
- Copiar datos de una o más tablas o vistas
- Escribir una consulta para especificar los datos a transferir
- Ubicación de la fuente de datos
- Ubicación de destino
- Los datos que se van a copiar
- Si se ejecutará el paquete inmediatamente o se guardará, etc.
O utilice el botón Examinar de la página Elegir un destino para localizar el archivo de Excel:
Utilizando el cuadro de diálogo Abrir, se pueden seleccionar otros archivos en lugar de Excel, pero al pulsar el botón Siguiente en la página Elegir un destino, aparecerá el siguiente mensaje de advertencia:
«La ruta del archivo contiene un archivo de Excel no válido. Por favor, proporcione un archivo con extensión .xls, .xlsx, .xlsm o .xlsb.»
El Asistente de importación y exportación de SQL Server no admite un archivo de Excel protegido por contraseña. En caso de que se utilice ese archivo de Excel protegido por contraseña, puede aparecer el mensaje de advertencia similar:
«La operación no pudo completarse.
La tabla externa no tiene el formato esperado. (Motor de base de datos de Microsoft Access)»
Debajo del cuadro combinado de la versión de Excel, elija la versión de Excel para el archivo de Excel.
En algunos casos, se debe instalar un archivo adicional para conectarse con éxito al archivo de Excel, de lo contrario, puede aparecer el siguiente mensaje de advertencia:
«La operación no pudo completarse.
El proveedor ‘Microsoft.ACE.OLEDB.16.0’ no está registrado en la máquina local. (System.Data)»
La siguiente página del asistente de importación y exportación de SQL Server es la página Especificar copia de tabla o consulta:
En esta página existen dos botones de opción:
La opción Copiar datos de una o más tablas o vistas es para copiar todos los datos de las tablas o vistas existentes en la base de datos de origen.
La opción Escribir una consulta para especificar los datos a transferir es para copiar datos específicos de la base de datos de origen mediante una consulta.
Para copiar más de una base de datos u objetos de base de datos que no sean tablas y vistas, utilice el Asistente para copiar bases de datos en lugar del Asistente para importar y exportar de SQL Server.
Elija el botón de opción Copiar datos de una o más tablas o vistas o Escribir una consulta para especificar los datos a transferir y haga clic en el botón Siguiente.
Copiar datos de una o más tablas o vistas
Si se elige el botón de opción Copiar datos de una o más tablas o vistas, entonces, la siguiente página del Asistente de importación y exportación de SQL Server será la página Seleccionar tablas y vistas de origen:
En la cuadrícula Tablas y vistas bajo la columna Origen, se listarán todas las vistas y tablas disponibles de la base de datos AdventureWorks2014.
Utilice la casilla de verificación situada junto a la tabla/vista para copiar los datos del origen al destino:
El nombre de la vista/tabla copiada en la columna Destino se puede cambiar haciendo clic en el nombre de la vista/tabla:
El nombre que se establezca aquí se utilizará como nombre de la hoja de trabajo en el archivo de Excel:
Al hacer clic en el botón Editar asignaciones, aparecerá el cuadro de diálogo Asignaciones de columnas:
Aquí se pueden establecer opciones adicionales de cómo y qué datos se exportarán.
Al principio del cuadro de diálogo Column Mappings, en Source, se muestra el nombre de la consulta, vista o tabla de origen. En Destino, se muestra el nombre de la vista o tabla de destino:
La opción Crear tabla de destino, si la tabla de destino no existe, crea una nueva tabla de destino (por ejemplo, ProductTest).
Al hacer clic en el botón Editar SQL, aparecerá el cuadro de diálogo Crear sentencia SQL de tabla:
Este cuadro genera automáticamente la sentencia CREATE TABLE que puede ser modificada/personalizada, se puede encontrar más sobre esto en la página Crear sentencia SQL de tabla.
El botón de opción Crear tabla de destino y el botón Editar SQL están desactivados si el nombre de destino ya existe:
Si el nombre de destino existe los botones de opción Eliminar filas en la tabla de destino y Anexar filas a la tabla de destino están activados:
Si se selecciona el botón de opción Eliminar filas en la tabla de destino, se borrarán todos los datos de la tabla/archivos existentes antes de importar los nuevos datos.
Si se selecciona el botón de opción Anexar filas a la tabla de destino, esto pondrá los nuevos datos a los datos que ya existen a la tabla/archivo de destino.
La casilla de verificación Soltar y volver a crear la tabla de destino sólo se habilita cuando el paquete que crea el Asistente de importación y exportación de SQL Server se guarda y luego el paquete se ejecuta de nuevo.
La sección Mappings del cuadro de diálogo Column Mappings muestra la columna del origen de datos y la correspondiente a las columnas del destino:
La columna Source (origen) enumera todas las columnas de la columna de origen.
La columna Destino lista el nombre de la columna de destino mapeada. En esta columna, la columna que no desea importar en el archivo de destino puede excluirse seleccionando el elemento <ignore> del cuadro combinado:
La columna Tipo muestra el tipo de datos para las columnas de destino. El tipo de datos se puede cambiar seleccionando otro tipo en el cuadro combinado:
En la columna Nullable, se puede especificar si la columna de destino permite un valor nulo o no.
En la columna Size, se puede especificar el tamaño de la columna destino:
En la columna Precision, se puede especificar la precisión de los datos numéricos para la columna destino, aquí se puede establecer el número de los dígitos.
En la columna Escala, se puede establecer el número del decimal para la columna numérica de destino:
Para previsualizar los datos que se copiarán en el destino, en la página Seleccionar tablas y vistas de origen, haga clic en el botón Vista previa. Esto abrirá el cuadro de diálogo Vista previa de datos:
El cuadro de diálogo Vista previa de datos muestra hasta 200 filas de datos de la fuente de datos.
Escribir una consulta para especificar los datos que se van a transferir
Si se elige el botón de opción Escribir una consulta para especificar los datos que se van a transferir en la página Especificar copia de tabla o consulta del Asistente de importación y exportación de SQL Server, aparecerá el cuadro de diálogo Proporcionar una consulta de origen:
En este cuadro de diálogo, se puede escribir, pegar o cargar una consulta del archivo haciendo clic en el botón Examinar, que selecciona los datos de origen para copiarlos en el destino.
En el editor de sentencias SQL, ponga la consulta deseada y pulse el botón Parse para comprobar si la sentencia SQL es válida:
Ahora, al pulsar el botón Next, aparecerá la página Select Source Tables and Views; en la rejilla Tables and view se mostrará el elemento que representa la consulta que se escribe en la página Provide a Source Query:
La siguiente página del Asistente de importación y exportación de SQL Server es la página Revisar asignación de tipos de datos:
Esta página muestra información sobre la conversación de tipos de datos que se realizará para que los datos de origen sean compatibles con el destino.
Si existe un problema con la conversación de tipos de datos, aparecerá el icono de advertencia junto a la fuente de datos en la lista Tabla y, en la lista Mapeo de tipos de datos, aparecerán los iconos de advertencia junto a las columnas de origen que indican que esta conversación puede causar una pérdida de datos:
Para ver información adicional sobre una columna individual, haga doble clic en esa columna y aparecerá el cuadro de diálogo Detalles de la conversión de columnas:
En esta página, se mostrará la información de origen y destino, así como el tipo de datos de la columna de origen y destino, los pasos de conversión, etc.
En la página Revisar asignación de tipos de datos, no se puede cambiar el tipo de datos, pero se puede volver a la página Seleccionar tablas y vistas de origen haciendo clic en el botón Atrás. En la página Seleccionar tablas y vistas de origen, haga clic en el botón Editar asignaciones para abrir el cuadro de diálogo Asignaciones de columnas y, desde allí, cambie el tipo de datos.
Una vez especificados y configurados el origen y el destino de los datos, haga clic en el botón Siguiente. El Asistente de importación y exportación de SQL Server muestra la página Guardar y ejecutar el paquete:
Por defecto, la opción Ejecutar inmediatamente para los datos de importación y exportación inmediatamente está marcada. Para guardar la configuración como el paquete SSIS, es necesario marcar la casilla Guardar paquete SSIS.
Si la casilla Guardar paquete SSIS está marcada, se mostrará una página adicional al hacer clic en el botón Siguiente:
En la página Guardar paquete SSIS, se pueden especificar opciones adicionales para guardar el paquete SSIS. Puede encontrar más información sobre estas opciones en la página Save SSIS Package.
La siguiente página del Asistente de importación y exportación de SQL Server es la página Complete the Wizard:
En esta página, se mostrarán todas las opciones que se realicen en este asistente. Esta página mostrará la siguiente información:
Para finalizar el proceso de exportación, haga clic en el botón Finalizar. El Asistente de importación y exportación de SQL Server mostrará la página Realizar operación:
Esta página muestra el estado de los datos se ha exportado con éxito o se han producido algunos errores durante la exportación de datos.
La columna Acción muestra los pasos de la operación.
La columna Estado muestra si el paso finalizó con éxito o con un error.
El Mensaje muestra los mensajes informativos o de error para cada paso.
Para obtener más información sobre el paso haga clic en el elemento mostrado:
Para ver un informe de los resultados, guardar el informe, copiar el informe o enviarlo por correo electrónico, haga clic en el botón Informe y en el menú, elija la opción deseada:
Para comprobar que el Asistente de Importación y Exportación de SQL Server ha exportado correctamente los datos al fichero Excel, busque y abra dicho fichero Excel, en nuestro caso que es el fichero SQL Data.xlsx: