Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I get list of all tables in a database using TSQL?

What is the best way to get the names of all of the tables in a specific database on SQL Server?

like image 767
Ray Avatar asked Oct 06 '08 17:10

Ray


People also ask

How do I get a list of all tables in a column in SQL?

The below query can be run in a database on SQL Server to list all tables with column details. SELECT schema_name(tab. schema_id) as schema_name, tab.name as table_name, col. column_id, col.name as column_name, t.name as data_type, col.


1 Answers

SQL Server 2000, 2005, 2008, 2012, 2014, 2016, 2017 or 2019:

SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE='BASE TABLE' 

To show only tables from a particular database

SELECT TABLE_NAME  FROM [<DATABASE_NAME>].INFORMATION_SCHEMA.TABLES  WHERE TABLE_TYPE = 'BASE TABLE' 

Or,

SELECT TABLE_NAME  FROM INFORMATION_SCHEMA.TABLES  WHERE TABLE_TYPE = 'BASE TABLE'      AND TABLE_CATALOG='dbName' --(for MySql, use: TABLE_SCHEMA='dbName' ) 

PS: For SQL Server 2000:

SELECT * FROM sysobjects WHERE xtype='U'  
like image 189
ScottStonehouse Avatar answered Oct 15 '22 08:10

ScottStonehouse