2011-07-22 4 views
1

J'utilise SQL Server 2005. J'ai une requête sur un serveur qui donne un jeu de résultats énorme et je voudrais enregistrer cela dans une vue sur mon serveur local.Créer une vue dans un serveur à partir d'une requête vers un serveur différent

est-il un moyen de créer soit une vue depuis le serveur vers ma base de données de serveur local directement ou exporter le jeu de résultats localement et l'importer dans la base de données de mon serveur local.

Merci!

Répondre

1

Vous pouvez utiliser OPENDATASOURCE ou une requête de serveur lié à partir de votre serveur local au serveur distant. Cela vous permettrait de créer localement un objet tel qu'une table temporaire et de le remplir avec les données du serveur distant.

Il existe de nombreuses informations sur l'implémentation dans la documentation en ligne de Microsoft.

+0

Je viens d'utiliser l'assistant Importer/Exporter pour copier les résultats de la requête directement dans la base de données de mon serveur local. Je ne peux pas répondre à mon propre message alors je vais juste vous marquer comme correct. –

+0

@ user172205: bien sûr, vous pouvez répondre à votre message ... rien ne vous empêche ... vous pouvez même accepter vos propres réponses! :-) –

+0

C'est vrai, je l'ai fait moi-même. Sentez-vous à l'aise de le faire! – mwigdahl

1

La création d'une vue sur le serveur local ne vous aidera pas beaucoup, car les données physiques sont stockées sur le serveur distant.

Vous pouvez créer une table sur le serveur local à partir de la vue et l'utiliser à la place.

0

Il s'agit d'un processus en deux étapes: vous devez d'abord créer un serveur lié. Ensuite, vous devrez créer une vue d'une instruction select sur cela.

Si vos données sont actuellement sur le serveur A, vous aurez besoin de faire un serveur lié sur le serveur B, faisant référence à A.

Ensuite (en supposant que votre utilisation de SSMS), vous pouvez parcourir cette table, faites un clic droit et choisi select. Cela vous montrera exactement comment refernce la table. Ensuite, ajoutez un "create view [viewname] comme" au début et exécutez.

Questions connexes