2009-08-23 53 views
10

我從一個糟糕的開發人員那裏繼承了一個笨重而可怕的未記錄的網站,並試圖查看數據庫模式。不幸的是,網絡主機是我遇到過的最差的,並且沒有用於查看數據庫模式甚至導出表的控制面板功能。通過SQL查詢獲取SQL Server架構?

有沒有什麼辦法可以通過SQL查詢(這將與ASP + SQL Server)來查看架構?我的最終目標是查看存在的表,可能會獲得關鍵表的SQL轉儲,然後以正確的方式重新創建整個事件。

回答

19

INFORMATION_SCHEMA架構是一個良好的開端:

SELECT * FROM INFORMATION_SCHEMA.TABLES 
SELECT * FROM INFORMATION_SCHEMA.VIEWS 

...等等。

您可能還想看看使用SMO這個API來獲取SQL Server中的元數據。

+0

謝謝,這正是我所期待的。 – Jeff 2009-08-24 18:32:19

+2

'SELECT * FROM INFORMATION_SCHEMA.COLUMNS'非常有用。它提供了列的詳細信息以及表名。 – KSK 2014-06-12 13:19:29

2

我不知道,如果像

SHOW TABLES; 
DESCRIBE table_name; 
SHOW TABLE STATUS from table_name; 

簡單的查詢在MS SQL是有效的。他們也將是有用的

+1

他們不是:)還有其他一些方法,比如'SELECT * FROM sys.objects WHERE type ='U''等等,但是MS SQL中沒有'SHOW TABLES',不幸的是。 – 2009-08-23 11:31:00