Bonjour,

Je souhaite executer une requete sur un serveur à distance.

Je m'explique : je suis sur un serveur sqlserver qu'on appelera le serveur A, je voudrais executer une requete : ( update table1 set champ1=t2.champ1 from table1 t1 inner join table2 t2 on t1.champ2=t2.champ2) sur le serveur B.

comment faire ?


une solution serait de faire ainsi :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
update openquery(serveurB,'select champ1,champ2 from table1')
set champ1=t2.champ1 from 
openquery(serveurB,'select champ2 from table1') t1 
inner join
openquery(serveurB,'select champ1, champ2 from table1') t2 
on t1.champ2=t2.champ2
ce n'est pas bon du tout en terme de perf( quand les tables disposent de plus d'une centaine de milliers de lignes).
ya t'il plus performant ?
peut on faire un openquery(serveurB,'update patati patata') ???

merci à tous.