Jointure table autre base, Nom base passé en Paramètre
Bonjour,
J'ai plusieurs bases Sql Server 2014 sur le même serveur qui ont strictement la même structure.
Je souhaite écrire 1 procStoc qui fait 1 jointure sur 2 tables contenues dans 2 bases différentes et dont le nom de la 2ème base est passé en paramètre. Ex.:
Code:
1 2 3 4 5 6 7 8 9
|
ALTER PROCEDURE [dbo].[GetInfos]
@BaseName varchar(8)
AS BEGIN
SELECT *
FROM MaTable1 T1
INNER JOIN @BaseName.dbo.MaTable2 T2 ON T2.xx = T1.yy
... |
La requête est ici simplifiée pour faciliter la compréhension. En réalité il y a de nombreuses autres jointures et clauses Where et le select n'est pas avec "*".
J'ai trouvé des articles montrant comment saisir la requête ds un string puis l’exécuter avec EXEC ou EXECUTE sp_executesql mais je ne suis pas Fan de cette façon qui ne permet aucun contrôle de syntaxe.
J'ai juste besoin de concaténer le nom de la base avec le nom de la table dynamiquement (@BaseName + ".dbo.MaTable2").
Avez-vous 1 solution à me proposer ?
Merci