recorrer una tabla dentro de un DTS

17/08/2007 - 03:20 por Roberto | Informe spam
Hola amigos,

mi consulta es la siguiente hay alguna forma o manera de que pueda recorrer
una tabla desde un DTS en SQL Server 2000, se me habia ocurrido hacer un SP
pero tampoco se como llamarlo desde un DTS, y lo malo es que tiene que ser
desde un DTS y no desde un SP.

el requerimiento es que me mandan cada mes un archivo txt, con registros de
personas y eso pasarlo a SQL Sever 2000, hasta todo bien, pero al siguiente
mes mandaran la misma lista pero con mas usuarios... entonces si hoy tenia
100 y el mes que viene mandan 20 registros mas el archivo vendria con los 100
que ya tengo más los 20 más y me duplicaria los datos...

por favor

Help Me.

atte.

Roberto

Preguntas similare

Leer las respuestas

#6 Roberto
17/08/2007 - 23:53 | Informe spam
uuuuu Genial de verdad fue muy bueno este aporte muchas
gracias de verdad te pasaste
mi mail es
saludos

muchas gracias

atte.

Roberto

"SYoung" wrote:

Roberto,

Te explico otra manera de hacerlo y te puedo enviar un archivo DTS con el
código si me envías tu dirección de correo electrónico.

1. Abres una instancia del Analizador de Consultas (Query Analyzer) y creas
una copia exacta de la tabla que contiene los records que añades todos los
meses. Esta tabla la salvas bajo el nombre ##ElNombreDeTuTabla. No cierres
esta ventana ni el Analizador de Consultas ya que vas a necesitar esta tabla
global temporal en tu paquete DTS. Este paso lo necesitas solamente cuando
estas desarrollando tu archivo DTS.

2. Abres tu paquete DTS y añades una conección de servidor SQL y la
configuras de la siguiente manera:
New connection: tempdb
Data source: Microsoft OLE DB Provider for SQL Server
Server: local
Use Windows Authentication
Database: tempdb

3. Ahora añades un SQL "task" al paquete DTS y lo configuras de la siguiente
manera:
Description: Crear tabla global temporal
Existing connection: tempdb
Command time-out: 0
SQL statement: (el código que tienes en Analizador de Consultas)

3. Ahora añades una conección para el archivo de texto que recibes todos los
meses y lo configuras de la misma manera que lo tienes en este momento. El
mío esta configurado de esta manera:
New connection: Archivo Fuente
Data source: Text File (Source)
File name: AddressType.csv

4. Ahora añades otra conección de servidor SQL y lo configuras de la
siguiente manera
New connection: AdventureWorks
Data source: Microsoft OLE DB Provider for SQL Server
Server: local
Use Windows Authentication
Database: AdventureWorks

5. Añades un SQL task y escribes una consulta T-SQL la cual contiene un LEFT
JOIN. Los records que estas buscando y vas a insertar tendrán el valor NULL.


Código de paso 1
USE AdventureWorks
GO

SET NOCOUNT ON

CREATE TABLE dbo.SampleTable (
SampleID int IDENTITY(1,1),
[Name] nvarchar(50),
ModifiedDate dateTime);

CREATE TABLE dbo.##SampleTable (
SampleID int,
[Name] nvarchar(50),
ModifiedDate dateTime);

SELECT *
FROM dbo.SampleTable



Código de paso 5
INSERT dbo.SampleTable (Name, ModifiedDate)
SELECT A.Name,
A.ModifiedDate
FROM dbo.##SampleTable A
LEFT JOIN dbo.SampleTable B ON A.Name = B.Name
WHERE B.Name IS NULL;
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida