Ceci est une question générique de conception de base de données - Quels sont les avantages d'utiliser un synonyme dans le développement de bases de données, sur une vue simple? Quelles sont les principales considérations à garder à l'esprit lors du choix entre les deux?Quels sont les avantages/inconvénients d'utiliser un synonyme par rapport à une vue?
Un exemple vue:
CREATE VIEW Users AS
SELECT * FROM IdentitySystem.dbo.Users
Et le synonyme équivalent:
CREATE SYNONYM Users
FOR IdentitySystem.dbo.LCTs
Désolé pour faire glisser un vieux fil, mais j'ai un dilemme similaire à l'opportunité d'utiliser une vue ou un synonyme. C'est une bonne réponse, merci, mais ça ne répond pas vraiment à la question – DarthPablo
Prends 2: -C Désolé de faire glisser un ancien fil de discussion, mais j'ai un dilemme similaire à savoir s'il faut utiliser une vue ou un synonyme. Merci pour votre bonne explication aussi. La question que je me pose est de savoir s'il y a des raisons pour ne pas utiliser une vue "droite" en faisant "sélectionner * à partir de la table"? Est-ce le bit que vous mentionnez de faire avec l'optimiseur de requête? Un problème que j'ai trouvé avec les synonymes est qu'ils font que Hibernate se plaint lorsque la validation du schéma est activée en utilisant 'hibernate.hbm2ddl.auto = validate'. En ce qui concerne vos raisons d'utiliser un synonyme, les deux premiers pourraient certainement être abordés avec un point de vue, n'est-ce pas? – DarthPablo
Parmi les 3 raisons d'utiliser un synonyme, les deux premières sont tout aussi applicables aux vues de proximité ('' 'create view X_table as select * from another_database.dbo.X_table''') Quant à la troisième raison - 99% de le temps il n'y a probablement pas de pénalité non plus. Alors, quels sont les mystérieux '' '... Plus beaucoup plus.» ''? et ont-ils de l'importance? Une bonne réponse est donnée par @Jimmy Zimms – Konstantin