Listing Tables, Views, and Procedures in SQL Server
In SQL Server, you can use system views and catalog views to list all the tables, views, and procedures in a database.
Listing Tables
To list all the tables in a database, you can use the `sys.tables` system view:
SELECT name FROM sys.tables WHERE type = 'U';
-- 'U' for user-defined tables This query returns a list of all the user-defined tables in the current database.
Result
| name |
|---|
| Customers |
| Orders |
| Products |
Listing Views
To list all the views in a database, you can use the `sys.views` system view:
SELECT name FROM sys.views; This query returns a list of all the views in the current database.
Result
| name |
|---|
| v_CustomerOrders |
| v_ProductSales |
Listing Procedures
To list all the procedures in a database, you can use the `sys.procedures` system view:
SELECT name FROM sys.procedures; This query returns a list of all the procedures in the current database.
Result
| name |
|---|
| usp_GetCustomerOrders |
| usp_UpdateProductPrice |
Listing All Objects
If you want to list all the tables, views, and procedures in a database, you can use the `sys.objects` system view:
SELECT name, type_desc FROM sys.objects WHERE type IN ('U', 'V', 'P');
-- 'U' for user-defined tables, 'V' for views, 'P' for procedures This query returns a list of all the tables, views, and procedures in the current database.
Result
| name | type_desc |
|---|---|
| Customers | USER_TABLE |
| Orders | USER_TABLE |
| v_CustomerOrders | VIEW |
| usp_GetCustomerOrders | SQL_STORED_PROCEDURE |
