如何列出某一Database中所有Table
要查看Database中所有User Defined Table方法有很多種,本文利用下列Object Catalog Views來實作:
- sys.tables:列出Database中所有Table物件。
- sys.objects:列出Database中所有Schema,但不包含DDL Trigger。
- sys.schemas:列出Database中所有schema。
- 下列程式示範如何使用sys.tables及sys.schemas列出所有table物件:
1: SELECT s.name + '.' + t.name AS TableName
2: FROM sys.tables t
3: INNER JOIN sys.schemas s
4: ON t.schema_id = s.schema_id
5: ORDER BY s.name,t.name
- 下列程式示範如何使用sys.objects及sys.schemas列出所有table物件:
1: SELECT s.name + '.' + o.name AS TableName
2: FROM sys.objects o
3: INNER JOIN sys.schemas s
4: ON o.schema_id = s.schema_id
5: WHERE type = 'U'
6: ORDER BY s.name,o.name
參考資料:
http://msdn.microsoft.com/zh-tw/library/ms187406.aspx