Requete pour lot DTS - SQL SERV 2000

Requete pour lot DTS - SQL SERV 2000 - SQL/NoSQL - Programmation

Marsh Posté le 27-10-2004 à 14:53:37    

Bonjour,  
 
Je souhaite extraire d'une base SQL Server 2000 des données que je transforme en un autre format via un lot DTS.  
Mon problème est que la requete d'extraction est construite "à la volée", (page form HTML). Hors, je ne parviens pas à passer cette requete au lot... (pas compris comment ou si c'est possible...)  
Ma requete n'est jamais "la meme" et je ne peux pas utiliser les variables globale... ("Select * from table where champ=?" = c'est ok car la requete est connue... mais ce n'est pas mon cas et il peut y avoir plusieurs conditions...)  
 
Merci d'avance si quelqu'un sait...

Reply

Marsh Posté le 27-10-2004 à 14:53:37   

Reply

Marsh Posté le 27-10-2004 à 15:23:13    

Rien compris :D
 
Je pense que DTS c'est rapé, du moins tu ne pourras pas utiliser l'interface. Va falloir coder à ma mimine je pense ;)

Reply

Marsh Posté le 27-10-2004 à 16:41:42    

[citation=883983,0,2][nom]Arjuna a écrit[/nom]Rien compris :D
 
Salut,
 
Je t'accordes que ce n'est pas très clair...
Alors : Dans un lot DTS, tu peux creer une "Variable Globale" : "V_G" par ex.
La requete du lot est par ex : "select * from table where champ=?"
Tu peux alors indiquer au lot que le ? correspond à la valeur de la variable globale.
 
Puis en VBscript ou asp par exemple (c'est mon cas...), tu definis ta variable et tu appelles ton lot :
 
------------- fichier asp ou vbs -----------------
Dim DTSPk
Set DTSPk = CreateObject("dts.package2" )
DTSPk.LoadFromSQLServer "ServerName",,,,,,,"Mon_Lot"
DTSPk.GlobalVariables("V_G" ).value = 2
DTSPk.FailOnError=true
DTSPk.Execute
Set DTSPk = Nothing
-------------------------------------------
Et voila... ton lot est exécuté avec une requete : "select * from table where champ=2" (voir au dessus, j'ai écris 2 au pif...)
 
Et ma question (peut-etre idiote dailleurs) c'est :
Comment passer une "requete entière" au lot (par ex "select * from table where champ=2" )
Plutot que définir DANS le lot la requete, et lui "passer" 2 ( = valeur de la variable globale)
 
Chuis pas sur d'avoir été + clair mais je pige pas grand chose à tout ca... Merci tt de meme...
Balgregor
 

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed