Impossible d'Interroger un point de Vue à partir d'un Serveur SQL
Dans SQL Server Management Studio, j'ai associé à un Serveur SQL server, sql02
à mon serveur local en tant que tel:
sp_addlinkedserver 'sql02'
GO
Je peux tables de requêtes à partir de ce serveur:
SELECT * FROM SQL02.SomeDatabase.dbo.SomeTable
Cependant, lorsque j'essaie d'interroger un point de vue, comme dans
SELECT * FROM SQL02.SomeDatabase.dbo.SomeView
Je reçois le message d'erreur suivant:
Msg 7314, Level 16, State 1, Line 1
The OLE DB provider "SQLNCLI10" for linked server "SQL02" does not contain the
table ""SomeDatabase"."dbo"."SomeView"". The table either does not exist or the
current user does not have permissions on that table.
Convenu que SomeView
n'existe pas comme une table. Ce que je fais mal?
Potentiellement faits pertinents:
- Version locale de SQL Server est 10.50.1617
- Version de serveur lié est 8.0.2282
- Je peux SÉLECTIONNER les tables sous-jacentes dans la vue
- Avez-vous la permission de SÉLECTIONNER à partir de la vue?
Vous devez vous connecter pour publier un commentaire.
Ressemble à un problème d'autorisation, avez-vous vérifié les autorisations sur la vue? Il n'y a rien de mal avec votre requête.
Aussi, avez-vous vérifié que la table n'est que vue de requête sur? Vérifiez les autorisations de table ainsi.
Un conseil: Essayez d'exécuter la vue d'un utilisateur spécifique, et si c'est réussi essayez de lier le serveur à l'aide de cet utilisateur spécifique.