Bonjour à tous,
Je cherche une requête qui me permet de chercher le nom d'une table dans toutes les base de données de sql server?
Merci d'avances
Bonjour à tous,
Je cherche une requête qui me permet de chercher le nom d'une table dans toutes les base de données de sql server?
Merci d'avances
Vous ne pouvez pas le faire en une seule requête à travers toutes les bases vue que chaque base est autonome.
Cependant vous pouvez lancer n requêtes construites dynamiquement dans chacun des bases.
Exemple :
A +
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 DECLARE @SCH NVARCHAR(128), @TAB NVARCHAR(128); SELECT @SCH = '???' , @TAB = '???'; DECLARE @SQL NVARCHAR(max) SET @SQL = ''; SELECT @SQL = @SQL + 'SELECT * FROM ' + name + '.INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = ''' + COALESCE(@SCH, 'dbo') + ''' AND TABLE_NAME = ''' + @TAB +''';' FROM sys.databases; EXEC (@SQL);
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
* * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *
Partager