You are on page 1of 18

Curso SQL Server 2000 Captulo 6

CURSO SQL SERVER 2000


Dictado por Horacio Peafiel

Mdulo 6: Uso de Data Transformation Services (DTS)

FAGDUT

CCI

Curso SQL Server 2000 Captulo 6

MDULO 6 DATA TRANSFORMATION SERVICES Importar y exportar datos es una tarea comn en la administracin de SQL Server 2000. Luego de completar este mdulo, estaremos en condiciones de: Entender cmo funciona DTS (Data Transformation Services). Descubrir qu son los paquetes DTS y comprender de qu forma interactan para llevar a cabo tareas de movimiento y modificacin de los datos de nuestra base de datos.

6.1 INTRODUCCIN A LA IMPORTACIN Y EXPORTACIN DE DATOS SQL Server 2000 nos brinda un conjunto de herramientas para el manejo de datos. Estas herramientas tienen caractersticas propias para el manejo de datos tales como la generacin de subconjuntos de datos y su transformacin. Herramienta DTS Descripcin DTS en una herramienta grfica usada para importar, exportar y transformar datos. DTS puede trabajar directamente sobre una gran variedad de orgenes de datos. DTS crea paquetes que pueden ser programados. DTS tambin puede importar y exportar objetos de nuestra base de datos entre instancias de SQL Server. Bcp es una utilidad de lnea de comandos usada para copiar datos desde un archivo de texto a una tabla SQL Server (o desde una tabla de SQL Server o vista a un archivo de texto) usando ODBC. Las capacidades de transformacin de Bcp son limitadas y requiere archivos de formato crpticos. BULK INSERT es un comando Transact-SQL usado para copiar datos desde un archivo ASCII de texto a una tabla o vista SQL Server (pero no exportar los datos) usando OLE DB. La sentencia BULK INSERT proporciona la misma funcionalidad que Bcp (y tambin tiene sus limitaciones) en una sentencia SQL que puede ser embebida en un paquete DTS.

Bcp

BULK INSERT

6.2 DATA TRANSFORMATION SERVICES (DTS) DTS es un conjunto poderoso de herramientas grficas (y objetos programables) que podemos usar para importar, exportar, y transformar datos desde y hacia una gran variedad de orgenes de datos y destinos. Los paquetes DTS Podemos crear un paquete DTS para conectar a un origen de datos, copiar y administrar datos y objetos de base de datos, ejecutar tareas como trabajos desde el paquete, transformar los datos, y luego guardar los datos transformados en objetos de base de datos en el mismo origen de datos y en un destino diferente. Podemos notificar a un usuario (o proceso) del xito o fallo en un paquete, incluyendo el enviar un archivo a un mensaje de e-mail. Definiremos estas tareas en pasos discretos (conocidos como Tareas DTS) y controlaremos la ejecucin de dichas tareas usando restricciones de precedencia (como realizar una cierta tarea si la tarea anterior falla). Podemos crear paquetes DTS con el Asistente para Importacin/Exportacin, el Diseador DTS, o programaticamente. Conexiones DTS Un paquete DTS debe tener un origen vlido de datos y un destino vlido al cual se conecta. DTS puede conectar a origenes de datos adicionales durante la ejecucin del paquete (como ser tablas de bsqueda ubicadas en una tercera conexin de datos). La siguiente tabla

FAGDUT

CCI

Curso SQL Server 2000 Captulo 6

describe la variedad de conexiones que podemos establecer durante el proceso de creacin del paquete: Tipo de Conexin Conexin de Origen de datos Descripcin Una conexin a una base de datos estndar (como ser SQL Server 2000, Microsoft Access, Oracle, dBase, o Visual FoxPro), una conexin OLEDB a un origen ODBC, una planilla de clculo Microsoft Excel, un origen HTML, o cualquier otro proveedor OLE DB. Las propiedades de un origen de datos especifican los parmetros de conexin necesarios. Una conexin a un archivo de texto (normalmente delimitado por comas). Las propiedades de una conexin de archivo especifican el formato del archivo de texto. Hay mltiples formatos que podemos usar. Por ejemplo, un archivo de texto puede estar delimitado por comas o tener un formato de campo fijo. Una conexin a un archivo intermedio (.UDL) que guarda una cadena de conexin para crear una conexin OLE DB que se resuelve en tiempo de ejecucin. La conexin de enlace de datos nos permite encapsular las propiedades de conexin en un archivo .UDL separado. Podemos editar la cadena de conexin en dicho archivo (de un origen de datos a otro) sin cambiar el paquete DTS.

Conexin de Archivo

Conexin de Enlace de Datos

Tareas DTS Un paquete DTS puede realizar una gran cantidad de tareas, ya sea secuencialmente o en paralelo. Las tareas en paralelo corren independientemente unas de otras (usando hilos de ejecucin del sistema operativo separados para mejorar la performance), mientras que las tareas secuenciales se ejecutan en un orden definido basado en el xito, fallo o completitud de las tareas predecesoras. Una tarea DTS es una unidad de trabajo discreta que es parte del movimiento y transformacin de datos (como copiar los contenidos de un archivo de texto a una tabla de SQL Server). Las tareas DTS que transforma datos (como ser la Tarea de Transformar datos, o la Tarea de Consulta Controlada por Datos) estn basadas en un componente de arquitectura llamado DTS data pump. El data pump de DTS es un proveedor de servicios OLE DB que proporciona interfases para importar, exportar, y transformar datos desde un origen de datos OLE DB hacia un destino OLE DB. SQL Server 2000 proporciona un nmero de tareas DTS que transforman datos, copian y administran datos y meta data, y funcionan como trabajos. Estas tareas son accedidas a travs de la herramienta Diseador de DTS (excepto la tarea Parallel Data Pump, que slo puede ser accedida programticamente). La siguiente tabla describe las tareas que se encuentran disponibles a travs del Diseador de DTS (las cuales tambin son accesibles programticamente. DTS puede realizar transformaciones a nivel de columna en los datos durante el proceso de importacin. Estas transformaciones pueden ser tan simples como el cambio de un nombre de columna, as como tan complejas como lo requiera nuestro proceso de transformacin. Usando el Diseador de DTS, podemos usar la tarea de Transformacin de datos o la Tarea de Consulta Controlada por Datos, o incluso podemos escribir nuestro script ActiveX. Realizamos una transformacin al mapear una relacin entre una o ms columnas en el origen de datos con una o ms columnas en el destino de datos. Entonces, definimos las transformaciones que queremos que ocurran durante la importacin.

FAGDUT

CCI

Curso SQL Server 2000 Captulo 6

Categora Tareas que copian y administran datos y metadatos

Tarea Bulk Insert

Ejecutar SQL

Copiar Server

objetos

SQL

Transferir Objetos de base de datos

Tareas que transforman datos

Transformar Datos

Consulta por Datos

Controlada

Tareas que funcionan como Trabajos

Scripts ActiveX

Propiedades Dinmicas

Ejecutar Paquete

Ejecutar Proceso

Transferencia Archivo
FAGDUT

de

Descripcin Ejecuta la sentencia BULK INSERT de TransactSQL desde un paquete DTS. Esta tarea proporciona la forma ms rpida de copiar informacin en una tabla o vista, pero no registra las filas que causan error. Si necesitamos capturar dichas finas a un archivo de excepcin, deberemos usar la tarea de Transformacin de Datos en su lugar. Ejecuta sentencias Transact-SQL durante la ejecucin del paquete. Podemos realizar un nmero de operaciones con esta tarea, la cual incluye el eliminar tablas y ejecutar procedimientos almacenados. Copia objetos de SQL Server (metadatos) desde una instancia a otra. Esta tarea puede transferir datos de una instancia de SQL a otra. Una coleccin de tareas que copian informacin de una instancia de SQL Server a otra. Estas tareas incluyen la tarea de Transferencia de Bases de Datos, la Transferencia de Mensajes de Error, la Transferencia de Inicios de Sesin, la Transferencia de Trabajos y la Transferencia de Procedimientos Almacenados. Estas tareas son usadas por el Asistente de Copia de Base de Datos. Copia, transforma, e inserta datos desde un origen de datos a un destino de datos. Esta tarea el la implementacin ms bsica del motor del data pump en DTS. Selecciona, customiza, y ejecuta una o ms operaciones Transact-SQL, como ser un update o un delete. Usaremos esta tarea si la tarea de Transformacin de Datos o la tarea de Bulk Insert no cumplen los requerimientos de nuestra aplicacin. Ejecuta un script ActiveX. Podemos usar esta tarea para escribir cdigo que realice funciones que no se encuentran disponibles en el Diseador de DTS. Recupera datos desde un origen de datos externo y asigna valores a propiedades seleccionadas. Estos orgenes externos pueden ser un archivo .INI, un archivo de datos, consulta, variable global, variable de entorno, o una constante. Ejecuta otros paquetes DTS como parte del flujo de trabajo. No debemos usar esta tarea recursivamente ya que podra provocar un error de desbordamiento de pila, lo cual causara que MMC se cerrase. Ejecuta un programa ejecutable o un archivo de lotes. Esta tarea puede ser usada para abrir cualquier aplicacin estndar, como ser Microsoft Excel, pero es usada principalmente para ejecutar archivos de lotes o aplicaciones de negocio que trabajan contra un origen de datos. Descarga datos de un servidor FTP remoto. La tarea de Transferencia de archivo y el programa
4 CCI

Curso SQL Server 2000 Captulo 6

Enviar Correo

FTP.EXE usan el mismo mtodo de conexin. Enva un mensaje por email como una tarea. Por ejemplo, una notificacin puede ser enviada a un administrador acerca del xito o fallo de una operacin de backup. Para utilizar esta tarea, debemos instalar un cliente MAPI en la instancia de SQL Server que estemos ejecutando.

Flujo de Trabajo en DTS DTS usa pasos y precedencia para ordenar las tareas dentro de un paquete. Los pasos definen la secuencia en la cual las tareas dentro de un paquete se ejecutan. En el diseador de DTS, usamos las restricciones de precedencia para controlar la secuencia. Las restricciones de precedencia unen cada tarea con su predecesora. Una tarea puede tener mltiples restricciones de precedencia. Las tareas sin restricciones de precedencia se ejecutan en paralelo. Hay tres tipos de restricciones de precedencia: Restriccin de Precedencia Incondicional En caso de xito Descripcin Si la tarea T2 es enlazada a T1 con una precedencia incondicional, T2 va a esperar a que T1 finalice para comenzar su ejecucin. Si la tarea T3 es enlazada a T1 con una precedencia de En caso de xito, la tarea T3 esperar a que finalice T1, y se ejecutar slo si T1 tuvo xito. Idem a la En caso de Exito, pero slo se ejecuta si T1 falla.

En caso de fallo

Almacenamiento de los paquetes DTS Podemos guardar paquetes DTS en SQL Server 2000, Servicios de Meta Data de SQL Server 2000, un archivo de Visual Basic, o un archivo de almacenamiento estructurado (OLE). Cuando guardamos un paquete DTS a disco, todas las conexiones, tareas, transformaciones, y pasos son guardados.

6.3 - TRANSFERENCIA Y TRANSFORMACION DE DATOS DTS proporciona dos herramientas grficas que podemos usar para crear paquetes DTS que transfieran y transformen datos. El Asistente de Importacin/Exportacin con DTS puede crear transformaciones simples. Tambin aprenderemos a usar el Diseador de DTS para crear transformaciones y flujos de trabajo ms complejos. El Asistente de Importacin/Exportacin El Asistente de Importacin/Exportacin puede ser iniciado desde el grupo de programas de Microsoft SQL Server en el men de Inicio, y tambin puede ser llamado desde el Administrador Corporativo. Desde el Administrador Corporativo, llamamos a este asistente en el men Herramientas, Asistentes, Servicios de Transformacin de Datos. Este asistente nos gua a travs de distintos pasos para importar y exportar datos entre distintos formatos. El primer paso en el procesamiento es seleccionar el Origen de Datos en la pgina correspondiente. El origen de datos por defecto es el Proveedor OLE DB para SQL Server. Este origen de datos se usa para conectar a una instancia de SQL Server. Seleccionaremos el tipo de biblioteca correspondiente para el formato desde el cual queremos copiar datos (como ser un archivo de texto o una base de datos Oracle) desde la lista desplegable Origen de Datos. Por ejemplo, si el origen de datos es SQL Server, proporcionaremos el nombre de servidor, el tipo de autenticacin, y la base de datos (ver la siguiente figura):

FAGDUT

CCI

Curso SQL Server 2000 Captulo 6

Si estamos usando un origen de datos diferente, otra informacin de conexin puede ser requerida. Por ejemplo, si estamos copiando desde un archivo de texto, deberemos proporcionar el nombre de archivo seguido de informacin del formato del mismo (incluyendo campos fijos y delimitados con comas, tipo de archivo, delimitadores para filas y columnas, y calificadores de texto). El siguiente paso en el proceso es seleccionar el destino de datos en la pgina correspondiente. Nuevamente, el destino por defecto es SQL Server, para el cual deberemos ingresar el nombre del servidor e informacin de conexin. Podemos seleccionar desde una gran variedad de destinos de datos. Por ejemplo, podemos usar DTS para copiar datos desde una base de datos Oracle a dBASE. Con SQL Server 2000, podemos crear una base de datos al vuelo. Si creamos dicha base de datos, la ubicacin fsica estar en el mismo disco que la base de datos Master. Las nicas propiedades que podemos elegir son el nombre de la base de datos y el tamao del archivo de datos y registro de transacciones. Ver figura a continuacin. Luego de seleccionar nuestro origen y destino de datos, debemos especificar o filtrar los datos que copiaremos en la pgina correspondiente (esta pgina no aparecer si estamos creando una nueva base de datos). Nuestras elecciones variarn dependiendo del origen y el destino de datos. Si el origen es una base de datos, podemos realizar una simple copia de los datos (sin filtro y sin orden), seleccionando el botn de opcin Copiar Tabla(s) y Vista(s) Desde la Base de Datos Origen, o podemos realizar una copia ms compleja que requiera una consulta Transact-SQL (seleccionando slo filas que correspondan con un criterio de seleccin), seleccionando el botn de opcin Use una Consulta para Especificar los Datos a Transferir. A su vez, si tanto el origen y el destino son SQL Server 7.0 o 2000, podemos copiar objetos de base de datos (como ser inicios de sesin o procedimientos almacenados), seleccionando Copiar Objetos y Datos Entre Bases de Datos SQL Server. (Ver siguiente figura).

FAGDUT

CCI

Curso SQL Server 2000 Captulo 6

FAGDUT

CCI

Curso SQL Server 2000 Captulo 6

Copiar las tablas y vistas de la base de datos de origen Si elegimos esta opcin, deberemos seleccionar todas o algunas de las tablas o vistas para copiar en la pgina siguiente. Por defecto, el nombre de destino para cada tabla o vista ser el mismo que el de la tabla o vista que est siendo copiada. Podemos crear nuevos nombres o seleccionar diferentes tablas o vistas existentes.

Si no realizamos otra accin, los contenidos de cada tabla o vista seleccionada sern copiados sin cambios. Sin la tabla de destino ya existe, por defecto, los datos que se copian sern apendizados. Si la tabla destino no existe, la tabla ser creada usando el nombre especificado. Si deseamos cambiar este comportamiento por defecto, en esta misma pgina hacemos click en el botn con los tres puntos. Se nos mostrar la siguiente ventana: En esta caja de texto, podemos especificar mapeados entre columnas del origen y del destino, crear una nueva tabla destino, editar la sentencia CREATE TABLE de Transact-SQL (si una nueva tabla necesita crearse), elegir entre eliminar o apendizar filas en la tabla destino (si la tabla ya existe), habilitar la insercin de identidades (si una columna con la propiedad Identity es especificada), o cambiar el tipo de datos (si se dispone de una conversin vlida). Tambin podemos especificar transformaciones nicas usando VBScript o Jscript en la pestaa de Transformaciones de la caja de dilogo. Para transformar datos mientras son copiados, editaremos el script en el rea de texto para personalizar las columnas antes de ser copiadas. Aunque podemos realizar estas transformaciones especiales desde el Asistente de Importacin/Exportacin, se recomienda usar el Diseador de DTS en su lugar.

FAGDUT

CCI

Curso SQL Server 2000 Captulo 6

Usar una consulta Si elegimos usar una consulta para especificar los datos a transferir, podemos escribir nuestro propio script Transact-SQL en el espacio proporcionado por la caja de texto. Podemos tipear el script, examinar e importar el mismo, o hacer click en el botn de Generador de consultas para generar el SQL resultante. Se proporciona un botn Analizar para controlar que el script SQL sea vlido.

FAGDUT

CCI

Curso SQL Server 2000 Captulo 6

Una vez que hayamos ingresado nuestro script Transact-SQL y click en Siguiente, podemos seleccionar y ver nuestro resultado haciendo click en el boton Vista Previa en la ventana Seleccionar tablas y vistas de origen. Se nos mostrar una ventana como la siguiente:

Copiar objetos y datos entre bases de datos Si elegimos copiar objetos y datos entre bases de datos SQL Server, podemos especificar cules objetos deseamos transferir entre las dos instancias en la pgina de Seleccionar Objetos a Copiar. Por defecto, los objetos de destino son creados para todos los objetos que son copiados (los objetos son copiados por defecto), los objetos correspondientes son eliminador antes de crear los nuevos, y los objetos dependientes son includos en la transferencia de datos. Como vemos en la siguiente ventana, podemos limitar qu objetos queremos copiar (como ser slo ciertas tablas o procedimientos almacenados, o no ndices).

FAGDUT

10

CCI

Curso SQL Server 2000 Captulo 6

Guardar y programar paquetes El paso final en el Asistente para Importacin/Exportacin para los distintos tipos de transformacin descriptos anteriormente es elegir entre ejecutar el paquete inmediatamente, o guardarlo y especificar una programacin en la pgina Guardar, Programar y Duplicar el Paquete. Como vemos en la siguiente ventana, por defecto el paquete ser ejecutado y no ser guardado o programado. Podemos elegir entre programarlo para correr en un momento especfico como un trabajo del Agente de SQL Server. Tambin podemos elegir entre distintos formatos para guardar el paquete.

6.4 EL DISEADOR DE DTS Para crear un nuevo paquete usando el Diseador de DTSA, en la consola de administracin SQL Server, debemos hacer click derecho en Data Transformation Services y click en Nuevo Paquete. El mtodo de abrir un paquete ya existente en el contenedor de DTS depende de cmo el paquete fuera guardado. Si el paquete DTS fue guardado como un archivo de almacenamiento estructurado, debemos hacer click derecho sobre Data Transformation Services y seleccionar Abrir paquete. Si el paquete DTS fuera guardado en SQL Server, hacemos click en Paquetes locales y hacemos click en el paquete correspondiente en el panel de detalle. Si el paquete fuera guardado en los Servicios de Meta Datos de SQL Server, hacemos click en el contenedor Paquetes de Meta Datos en la vista de rbol de la consola, y hacemos click en el paquete correspondiente en el panel de detalle. El Diseador de DTS nos permite graficamente crear conexiones a orgenes de datos y destinos, configurar tareas DTS, realizar transformaciones DTS, y especificar restricciones de precedencia. Podemos usar drag-and-drop y completar las cajas de dilogo de los distintos objetos para crear paquetes DTS en la vista de diseo. La siguiente figura nos muestra la interfase de usuario del Diseador de DTS:

FAGDUT

11

CCI

Curso SQL Server 2000 Captulo 6

Cuando creamos un paquete DTS usando el diseador de DTS, el primer paso es seleccionar un origen de datos. Podemos arrastrar un objeto de origen de datos desde la barra de herramientas de Conexin a la hoja de diseo, o seleccionar un origen de datos desde el men Conexin. El cuadro de dilogo Propiedades de Conexin que aparece vara basado en el origen de datos seleccionado. Completaremos esta caja de dilogo para configurar los orgenes de datos. Esta caja de dilogo es similar a la ventana mostrada por el Asistente de Importacin/Exportacin. La siguiente figura nos muestra la caja de dilogo en cuestin:

FAGDUT

12

CCI

Curso SQL Server 2000 Captulo 6

El siguiente paso es seleccionar y configurar un destino de datos de la misma manera que describimos arriba. La siguiente figura muestra el diseador de DTS conteniendo tres orgenes de datos: dos conexiones OLE DB a SQL Server y una conexin a un archivo de texto (Fuente).

A continuacin, necesitaremos definir las tareas que queremos que ocurran usando ya sea el men Tareas o la barra de Herramientas Tarea. Si seleccionamos la tarea Transformar datos, se nos pide seleccionar el origen y el destino de los datos. Si seleccionamos otra tarea, una caja de dilogo aparecer para pedirnos que configuremos las propiedades de la tarea (como ser configurar la tarea Ejecutar SQL para crear una tabla usando una conexin de datos existente). Si seleccionamos la tarea Transformar datos, una flecha de color gris oscuro aparece apuntando desde el origen al destino de datos. Si seleccionamos otra tarea, simplemente aparece en la hoja de diseo como un cono. La siguiente figura muestra dos tareas de Transformar Datos y una de Ejecutar SQL que crea la tabla. Para editar y customizar la tarea Transformar Datos, hacemos click en la flecha gris oscuro entre el origen y el destino de datos para abrir la caja de dilogo para esta tarea. En la pestaa Origen, si el origen de datos es una base de datos, podemos filtrar los datos que estn siendo copiados seleccionando tablas o vistas especficas o usando una consulta Transact-SQL.

FAGDUT

13

CCI

Curso SQL Server 2000 Captulo 6

FAGDUT

14

CCI

Curso SQL Server 2000 Captulo 6

En la pestaa Destino, podemos definir informacin sobre los datos que estn siendo importados (como ser definiciones de columnas). Nuestra eleccin variar dependiendo del destino de datos. Si el destino de datos es una base de datos, podemos crear y definir una nueva tabla o seleccionar una existente para cada tabla que est siendo importada.

En la pestaa Transformaciones, podemos configurar transformaciones. Por defecto, las columnas origen son copiadas a las columnas destino sin modificacin. Si deseamos modificar los datos de una columna entre el origen y el destino de datos, seleccionaremos la columna que vamos a modificar haciendo click en la lista desplegable Nombre o haciendo click en la flecha entre el origen y el destino (la flecha aparecer en negrita). A continuacin, hacemos click en el botn Nuevo o el botn Editar para crear la nueva transformacin o modificar una transformacin existente (el hacer doble click sobre la flecha resaltada modifica la transformacin existente). Si hacemos click en el botn Nuevo, podemos elegir el tipo de transformacin que deseamos a partir de una lista de transformaciones disponibles en la caja de dilogo Crear Nueva Transformacin. A continuacin vemos estas ventanas:

FAGDUT

15

CCI

Curso SQL Server 2000 Captulo 6

Si seleccionamos ActiveX Script en la ltima ventana, podemos crear un nuevo script de transformacin para realizar transformaciones ms complejas. En la pestaa de Bsquedas, podemos definir una consulta de bsqueda. Una consulta de bsqueda requiere una conexin de datos que ejecute consultas y procedimientos almacenados. Usaremos este tipo de consultas para buscar dentro de informacin tabular, realizar actualizaciones en paralelo en mltiples sistemas de bases de datos, validar entradas
FAGDUT 16 CCI

Curso SQL Server 2000 Captulo 6

antes de cargar, invocar procedimientos almacenados y responder a condiciones de entrada, y usar variables globales como parmetros de consulta. Finalmente, en la pestaa Opciones, podemos definir un nmero de propiedades adicionales para la transformacin. Podemos definir uno o ms archivos de excepcin para ser usado para registrar excepciones durante la ejecucin del paquete. Este archivo puede residir tanto en un disco local como en una unidad en la red. El archivo puede ser escrito en el formato de SQL Server 7.0 para compatibilidad hacia atrs. Podemos dividir los errrores de origen y destino en archivos separados. Tambin podemos definir un nmero mximo de errores permitidos antes de que la ejecucin del paquete termine. Asimismo, podemos definir propiedades especficas de ejecucin cuando la conexin de destino es el proveedor OLE DB para SQL Server. Estas propiedades incluyen especificar procesamiento de importacin rpido, control de restricciones durante la ejecucin del paquete, tipos de bloqueos, tamao del lote, y propiedades de identidad. Una vez que hayamos configurado la tarea de Transformacin de Datos y cualquier otra tarea DTS que nuestro paquete realizar, debemos configurar restricciones de precedencia. En nuestro ejemplo, tendremos datos desde dos origenes de datos separados siendo copiados a un destino de datos. Tambin tendremos una tarea de creacin de tabla (CREATE TABLE). Usaremos restricciones de precedencia para determinar el orden de ejecucin para cada tarea. Para establecer precedencia en el flujo de trabajo, seleccionaremos dos o ms tareas en el orden en que se ejecutarn, y seleccionaremos el tipo de flujo de trabajo en el men Flujo de Trabajo. Por ejemplo, si la tarea Create Table debe ejecutarse antes que la copia al destino de datos, seleccionaremos En caso de xito en el men Flujo de Trabajo. Podemos crear una tarea de Enviar correo y configurar la restriccin de precedencia entre la tarea Create Table y la tarea Enviar correo. Esto enviar un email de notificacin a un administrador si la tarea Create Table fallase. Cuando estamos usando paquetes DTS automatizados y programados para realizar operaciones de base de datos, las notificaciones de fallos son esenciales.

6.5 - TRABAJO CON PAQUETES DTS Ahora que entendemos cmo crear y ejecutar paquetes DTS, aprenderemos sobre cmo guardar y asegurar dichos paquetes. A su vez, aprenderemos mtodos adicionales para ejecutar un paquete DTS, a la vez que usar los registros de eventos para detectar y corregir problemas que ocurren durante la ejecucin de los paquetes DTS. OPCIONES DE GUARDADO DE PAQUETES DTS SQL Server 2000 Guardar un paquete DTS en SQL Server 2000 nos permite guardar un paquete DTS como un objeto binario en la tabla sysdtspackages en la base de datos MSDB en una instancia SQL Server 2000 en nuestra organizacin. Podemos llevar un inventario de paquetes DTS en una ubicacin de la red. Cada versin de un paquete DTS es almacenada, preservando el historial de ejecucin de un paquete. Esto nos permite recuperar y editar cualquier versin del paquete DTS que elijamos, no slo la ltima versin. Cuando guardamos un paquete DTS en SQL Server 2000, podemos establecer tanto una contrasea de propietario como una contrasea de usuario. Estas contraseas son utilizadas en adicin a la Autenticacin Windows o la Autenticacin de SQL Server usadas para conectarse al servidor. Los usuarios con acceso a la contrasea de usuario puede correr un paquete DTS, pero no pueden abrir o editar el paquete. Los usuarios deben tener acceso a la contrasea de propietario para abrir o editar un paquete DTS. Este nivel extra de seguridad es altamente recomendado, particularmente en una instancia de SQL Server 2000 que permita autenticacin SQL Server.

FAGDUT

17

CCI

Curso SQL Server 2000 Captulo 6

Meta Data Services Guardar un paquete DTS como un Servicio de Meta Datos de SQL Server permite hacer un seguimiento de la versin del paquete, meta datos, y linaje (origen de datos y transformaciones). Podemos ver un historial de versin para paquetes guardados en los Servicios de Meta Datos en el Administrador Corporativo de SQL Server y podemos abrir la versin que deseamos. DTS usa el modelo de informacin de DTS para guardar informacin de meta datos en los Servicios de Meta Datos. El Modelo de Informacin describe las transformaciones de datos, cmo estn agrupadas, y los tipos de datos accedidos. Esta informacin puede ser almacenada, examinada, y reutilizada. Archivo de Almacenamiento Estructurado Guardar un paquete como un archivo de almacenamiento estructurado permite copiar, mover, y enviar el paquete a travs de la red (como ser dentro de un mensaje de correo electrnico), sin guardar el paquete en la base de datos o repositorio. Mltiples versiones pueden ser almacenadas dentro de un solo archivo. Guardar un archivo como de Almacenamiento Estructurado tambin soporta contraseas de propietario y de usuario. Podemos usar las utilidades de lnea de comandos de DTS para la ejecucin del paquete. Estos archivos tienen la extensin .DTS. Archivo Visual Basic Guardar un paquete DTS como un archivo de Visual Basic nos permite editar el paquete usando Visual Basic o Visual C++. Esto permite a los desarrolladores incorporar paquetes DTS en programas Visual Basic o ser usados como prototipos que referencian los componentes en el modelo de objetos de DTS. Un paquete DTS guardado como Archivo Visual Basic no puede ser reabierto y editado por el Diseador de DTS.

6.6 - EJECUCIN DE PAQUETES DTS DTS proporciona dos utilidades de lnea de comandos: la utilidad DTS Run y el comando Dtsrun. Usando cualquiera de estas utilidades, el usuario puede ejecutar un paquete DTS sin abrirlo. Si el paquete DTS fuera guardado usando una contrasea de usuario, debemos proporcionar dicha contrasea. Si el paquete DTS fue guardado como un archivo de almacenamiento estructurado, deberemos especificar el nombre del archivo. Si el paquete DTS fue guardado en SQL Server, deberemos especificar informacin de conexin a la instancia SQL Server que contiene el paquete. La utilidad DTS Run La utilidad DTS Run es una utilidad interactiva que nos permite conectar a un servidor o especificar un archivo, especificar opciones de programacin, identificar y habilitar un registro de eventos, agregar nuevas variables globales y cambiar las propiedades de variables existentes, y crear un comando Dtsrun para uso futuro. Para acceder a esta utilidad, debemos ejecutar Dtsrunui desde la lnea de comandos Dtsrun La utilidad de lnea de comandos Dtsrun nos permite ejecutar un paquete DTS desde la lnea de comandos usando argumentos y embeber dicho comando en un archivo .BAT o .CMD por lotes. Por ejemplo, para ejecutar el paquete DTS llamado MiPaquete, guardado en c.\PaquetesDTS\DTS1.dts, y con una contrasea de Password, tipearemos el siguiente comando: dtsrun /FC:\PaquetesDTS\DTS1.dts /NMiPaquete /MPassword

FAGDUT

18

CCI

You might also like