Comment lister ou rechercher tous les noms de colonnes dans ma base de données?


37

Je souhaite rechercher une chaîne dans les noms des colonnes présentes dans une base de données.

Je travaille sur un projet de maintenance et certaines des bases de données avec lesquelles je travaille ont plus de 150 tables. Je cherche donc un moyen rapide de le faire.

Que recommandez-vous?


question similaire posée dans SO
CoderHawk

bon article. Merci beaucoup. J'ai aussi utilisé TM Field Finder et il est vraiment puissant en matière de recherche dans le schéma SQL et aussi dans les données.

Réponses:


38

Vous pouvez utiliser la requête suivante pour répertorier toutes les colonnes ou rechercher des colonnes dans des tables d'une base de données.

USE AdventureWorks 
GO 
SELECT t.name AS table_name,
SCHEMA_NAME(schema_id) AS schema_name,
c.name AS column_name
FROM sys.tables AS t
INNER JOIN sys.columns c ON t.OBJECT_ID = c.OBJECT_ID
WHERE c.name LIKE '%EmployeeID%'
ORDER BY schema_name, table_name; 

Vous pouvez utiliser les vues information_schema pour répertorier tous les objets des bases de données SQL Server 2005 ou 2008.

SELECT * FROM information_schema.tables

SELECT * FROM information_schema.columns

http://blog.sqlauthority.com/2008/08/06/sql-server-query-to-find-column-from-all-tables-of-database/


8

Il existe également SQL Search - un outil gratuit qui s'intègre à SQL Server Management Studio.

texte alternatif


1
SQL Search est un bon outil, mais gardez à l'esprit que la fenêtre de résultats est arbitrairement limitée à 250 résultats. La dernière fois que j'ai utilisé cet outil, Red Gate n’avait aucun moyen de lever cette limite. Cela étant dit, c’est toujours un outil très utile et je le recommanderais à n’importe quel administrateur de base de données ou développeur SQL Server. Le prix est correct aussi!
Matt M

5

En retard un mais utile, puisque les deux outils sont gratuits.

ApexSQL Search - L’avantage de cet outil est qu’il peut également rechercher des données, afficher des dépendances entre des objets et coupler d’autres éléments utiles.

entrez la description de l'image ici

SSMS Toolpack - gratuit pour toutes les versions, à l'exception de SQL 2012. De nombreuses options intéressantes , qui ne sont pas uniquement liées à la recherche, telles que des extraits de code, diverses personnalisations, etc.

entrez la description de l'image ici


1

C’est un système que tous les administrateurs de base de données SQL de l’ancien temps utilisent.

EXEC sp_help 'your table name';

Si seulement avec une seule ligne, vous n'avez même pas besoin de taper EXEC. Il suffit de faire

sp_help 'your table name'
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.