Cómo: Transferir datos a Excel mediante el uso de servicios de transformación de datos de SQL Server

Resumen

Servicios de transformación de datos (DTS) de SQL Server es una eficaz herramienta que puede utilizar para transferir fácilmente datos entre orígenes de datos OLE DB, transformar datos en el proceso (si elige hacerlo). Este artículo describe cómo utilizar al Asistente para importación/exportación con DTS para exportar datos desde Microsoft SQL Server o desde otro origen de datos a una hoja de cálculo de Microsoft Excel. Muchas de las mismas consideraciones se aplican si está configurando su propia tarea Transformar datos en el Diseñador DTS.

Requisitos

La lista siguiente describe el hardware, software, infraestructura de red y service packs recomendados que necesita:

  • Microsoft SQL Server 2000 o Microsoft SQL Server 7.0 instalado en un sistema operativo de Microsoft Windows compatible.
  • Microsoft Jet 4.0 y sus archivos relacionados como instalados por MDAC versión 2.1 o 2.5 o por otro producto.
Este artículo se supone que tiene conocimientos básicos al menos con los siguientes temas:

  • SQL Server
  • Servicios de transformación de datos
  • Hojas de cálculo de Excel

Seleccionar un archivo de destino

  1. Iniciar al Asistente para importación/exportación con DTS y, a continuación, seleccione un origen de datos en la ficha Elegir un origen de datos . Después de seleccionar un origen de datos, el enfoque cambia a la ficha Elegir un destino .
  2. En la lista de destino , haga clic en Microsoft Excel 97-2000 como el tipo de base de datos de destino. Utilice este mismo tipo para Microsoft Excel 2002 (Microsoft Office XP).
  3. En el cuadro nombre de archivo , haga clic en el botón de puntos suspensivos para buscar un archivo de libro de Excel existente. Este archivo no debe estar abierto en Excel mientras esté completando al asistente. Si tiene Excel instalado en su equipo, puede crear un nuevo archivo de Excel en este momento sin tener que salir del asistente. Para ello, haga clic en Seleccionar archivo de texto, seleccione nuevoy, a continuación, haga clic en Hoja de cálculo de Microsoft Excel.

Seleccionar una tabla de destino

  1. Con la ficha Seleccionar las tablas de origen y vistas en el foco, en la columna de origen , seleccione la tabla y la vista (o varias tablas y vistas) que desea exportar a Excel.
  2. De forma predeterminada, el asistente rellena una tabla de destino con el mismo nombre que la tabla de origen en la columna de destino .

    Nota: Esto crea una hoja de cálculo y un rango con nombre con el mismo nombre en el libro de destino; Sin embargo, DTS utiliza el rango con nombre en la mayoría de las circunstancias.

    También puede seleccionar una hoja de cálculo existente o con el nombre de rango (los nombres que van seguidos de un signo $, como Hoja1$, son nombres de hoja de cálculo).
  3. En la columna de transformación , haga clic en el botón de puntos suspensivos para abrir un cuadro de diálogo adicional en el que hace clic en una de las siguientes opciones:
    • Crear la tabla de destino

      Esta es la única opción disponible si todavía no existe la tabla de destino. Si la tabla ya existe, esta opción no está disponible, en cuyo caso, hay una opción adicional para quitar y volver a crear la tabla.
    • Eliminar y reemplazar las filas de destino existentes

      Si intenta utilizar esta opción con Excel, se produce un error (por lo tanto, no se puede utilizar).
    • Anexar las nuevas filas a las filas existentes
  4. En los pasos restantes del asistente, puede guardar y ejecutar el paquete DTS. Para exportar los datos nuevos o modificados en forma regular, guardar y programar opcionalmente el paquete antes de salir del asistente.

Solución de problemas

Seleccionar el archivo de Excel

  • No tiene el libro de Excel abierto mientras se esté completando al Asistente para DTS.

Seleccionar la tabla de Excel

  • Si selecciona la opción quitar y volver a crear la tabla de destino , el comando colocar, se produce un error la primera vez que se ejecuta el paquete porque la tabla no existe; Sin embargo, la exportación se realiza correctamente.
  • Si selecciona crear la tabla de destino sin la opción quitar y volver a crear , el comando Crear falla en ejecuciones posteriores ya que la tabla ya existe; Sin embargo, la exportación se realiza correctamente.
  • Si se ejecuta una instrucción CREATE TABLE en Excel, por ejemplo, la instrucción que genera el asistente, se crea una hoja de cálculo y un rango con nombre con el mismo nombre; Sin embargo, DTS funciona con los rangos con nombre a menos que se especifique lo contrario. Para ver estos rangos con nombre en Excel: en el menú Insertar , haga clic en nombrey, a continuación, haga clic en definir.
  • No puede eliminar y reemplazar las filas existentes en el cuadro de diálogo transformar , porque no se puede eliminar filas de hoja de cálculo de Excel a través de OLE DB.
  • Si manualmente en blanco los datos exportados en la hoja de cálculo de destino, exportar los datos de nuevo para que los nuevos datos que se adjunta debajo de las filas en blanco, ya que el controlador está mirando la definición guardada del rango con nombre y está expandiendo para las nuevas filas. Si elimina todas las filas de datos en la hoja de cálculo, este comportamiento no se producen porque la eliminación de las filas cambia la definición guardada del rango con nombre. Sin embargo, es preferible utilizar la opción quitar y volver a crear para reemplazar los datos existentes.

Referencias

Para obtener información adicional acerca de los problemas que experimenta al utilizar Excel como una base de datos, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

257819 HOWTO: usar ADO con datos de Excel desde Visual Basic o VBA
Para obtener información adicional acerca de problemas conocidos que experimenta al utilizar Excel con DTS, haga clic en los números de artículo siguientes para verlos en Microsoft Knowledge Base:

236605 PRB: Asistente para DTS puede no detectar tipo de columna de Excel para datos mixtos
281517 PRB: error en la transferencia de datos de origen de Jet 4.0LEDB con Error de desbordamiento de búfer
ERROR 207446 : no se puede importar la hoja de cálculo de Excel 97 con 256 o más columnas

Para obtener información adicional acerca de cómo utilizar la característica de DTS de SQL Server, consulte los siguientes artículos de libros en pantalla de SQL Server:

"Ejemplo de transformación compleja de SQL Server a Excel"
"Crear un paquete DTS con el Asistente para importación/exportación con DTS"
"Compatibilidad de controladores DTS para tipos de datos heterogéneos"

Propiedades

Id. de artículo: 319951 - Última revisión: 17 ene. 2017 - Revisión: 1

Comentarios