Je wilt een kolom zoeken in een van tabellen in je SQL Server database. Je database bestaat uit een paar honderd tabellen. Het kan een tijdrovende klus zijn om alle tabellen open te gaan klappen om de kolom te gaan zoeken. Met deze handige methodes heb je de kolom snel gevonden.
In SQL Server ontbreekt een zoekfunctionaliteit om snel een kolom te kunnen vinden in databases. Dit kan nog weleens handig zijn als je een bepaalde kolom zoekt maar niet weet in welke tabel deze zich bevindt. De oplossing hiervoor is een vrij eenvoudige Query.
Methode 1: SQL Query op de metadata
SELECT O.NAME Tabelnaam, C.NAME Kolomnaam FROM sys.columns C INNER JOIN sys.objects O ON C.object_id = O.object_id WHERE C.NAME LIKE '%DebiteurNaam%' ORDER BY O.NAME, C.NAME |
Het is natuurlijk niet erg handig om iedere keer dat je een kolom zoekt deze hele query in te typen, daarom is er ook de volgende Stored-Procedure die de taak wel heel eenvoudig maakt:
CREATE PROCEDURE [dbo].[pcdGetColumns] @kolomnaam nvarchar(256) -- Zoek een kolomnaam in een database -- EXECUTE pcdGetColumns '%naam%' AS BEGIN SELECT O.NAME Tabelnaam, C.NAME Kolomnaam FROM sys.columns C INNER JOIN sys.objects O ON C.object_id = O.object_id WHERE C.NAME LIKE @kolomnaam ORDER BY O.NAME, C.NAME END |
Methode 2: Red-Gate SQL Search
Dit is echt een super handig tooltje van de leverancier Red-Gate. Ik ben sowieso erg fan van de tools die red-gate verkoopt. Helaas zijn ze niet gratis en best aan de prijs, vooral als het bedrijf waarvoor je werkt of een opdracht uitvoert de tools niet heeft. Gelukkig is deze tool helemaal gratis en heet SQL Search 2.
[adinserter block=”3″]SQL Search 2 installeer je als een addon binnen SQL Server Management Studio. Bovenin krijg je er dan een knopje bij waarmee je kunt zoeken door alle database maar ook binnen verschillende objecten. Je kunt ervoor kiezen om alleen in tabellen te zoeken maar je kunt ook in views, functies, procedures en triggers zoeken, erg cool.
Hopelijk ben je op weg geholpen met een kolom zoeken in je database. Mocht je geen rechten om software te installeren dan kies je voor de sql query. Mocht je wel software kunnen installeren kies je voor de gratis SQL Search van Red-Gate.