SQL statement to find a table by its name

navig8tr picture navig8tr · Jun 2, 2014 · Viewed 20.1k times · Source

We have a lot of databases and a lot of tables within those databases. I'm searching for a specific one. I know the name of the table but it wouldn't be easy to search through every database manually. What SQL statement could I used to find the table by name?

Btw, we're using Microsoft SQL Server Management Studio. Maybe there's another way to search for tables by name within this program?

Answer

Jack Marchetti picture Jack Marchetti · Jun 2, 2014

You said you did a search which should've led you to this article:

http://blog.sqlauthority.com/2008/04/29/sql-server-find-table-in-every-database-of-sql-server/

If not, follow that. Basically what he creates is a stored procedure which will search for every table name you specify in every database.

If you were to do this:

select * from sys.tables where name like '%tablename%'

You would need to change the database every single time and if you have a lot, well you see the problem.