Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

optimisation d'une requête sur de multiples serveur

1 réponse
Avatar
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

1 réponse

Avatar
Fred BROUARD
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 *************************