optimisation d'une requête sur de multiples serveur

Le
Test recherche
Bonjour je suis sous sql 2000 et je fais une requete sur des serveur
différents mais pour obtenir le même résultats
et je me demandais s'il y avais un moyen d'optimiser à

le code est le suivant selon une variable qui m'indique quel serveur
consulter
If @l_ChoixServeur = 1
Begin
Select champ1,
champs2,.
From SERVEUR1.BASE1.dbo.Table1
Inner join SERVEUR1.BASE2.dbo.Table2
On .
Where
End
Else If @l_ChoixServeur = 2
Begin
Select champ1,
champs2,.
From SERVEUR2.BASE1.dbo.Table1
Inner join SERVEUR2.BASE2.dbo.Table2
On .
Where
End
Else If @l_ChoixServeur = 3
Begin
Select champ1,
champs2,.
From SERVEUR3.BASE1.dbo.Table1
Inner join SERVEUR3.BASE2.dbo.Table2
On .
Where
End

Mon problème est que comme la liste des champs retournée est assez longue,
quand il y a une modification il faut la reportée autant de fois que de
serveur
Merci d'avance
Cordialement

Stéphane
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Fred BROUARD
Le #18180971
Si la requête n'est pas compliquée : faites là en dynamique.

Si elle est compliquée, faites une vue d'agrégation interserveur, mais
n'oubliez pas de mettre dans vos tables les contraintes CHECK de
partitionnement.

A +

Test recherche a écrit :
Bonjour je suis sous sql 2000 et je fais une requete sur des serveur
différents mais pour obtenir le même résultats
et je me demandais s'il y avais un moyen d'optimiser à

le code est le suivant selon une variable qui m'indique quel serveur
consulter
If @l_ChoixServeur = 1
Begin
Select champ1,
champs2,....
From SERVEUR1.BASE1.dbo.Table1
Inner join SERVEUR1.BASE2.dbo.Table2
On ....
Where ...
End
Else If @l_ChoixServeur = 2
Begin
Select champ1,
champs2,....
From SERVEUR2.BASE1.dbo.Table1
Inner join SERVEUR2.BASE2.dbo.Table2
On ....
Where ...
End
Else If @l_ChoixServeur = 3
Begin
Select champ1,
champs2,....
From SERVEUR3.BASE1.dbo.Table1
Inner join SERVEUR3.BASE2.dbo.Table2
On ....
Where ...
End

Mon problème est que comme la liste des champs retournée est assez longue,
quand il y a une modification il faut la reportée autant de fois que de
serveur
Merci d'avance
Cordialement

Stéphane






--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
*********************** http://www.sqlspot.com *************************
Publicité
Poster une réponse
Anonyme