SQL Server Get Object Definition (sp_helptext)

2022-01-20

筆記 SQL Server 如何查詢資料庫物件的定義,同時說明如何結合產生指令碼,匯出資料庫部分資料及物件。

SQL Server Logo

說明

Object Explorer (物件總管)

以往要查詢資料庫物件,包含 View, Stored Procedures 或者是 User Defined Functions,都是透過物件總管,對物件進行修改的方式。這在單一物件的情況上不是問題,但如果需要大量查詢資料庫物件就會有些困難 😫 (懶)

產生指令碼

利用產生指令碼功能能夠輕易地將資料庫物件匯出成 Cretae 語法,非常實用。

如果需要篩選特定資料欄位、資料列,可以搭配 SELECT INTO 的方式,先產生暫存資料表,對暫存資料表使用產生指令碼後再進行移除。

SELECT TOP(100) Col1, Col2 INTO Temp.TableName FROM TableName
-- After Generate Scripts
DROP Table Temp.TableName

組合查詢

如果查詢需求只有約十個物件的時候,或者要確認系統物件的時候,可以使用 sp_helptext Stored Procedures。

sp_helptext 'vw_Customers'
SELECT 'sp_helptext ''' + Name + '''' From sys.views

SQL Express localdb 不支援 sp_helptext

參考資料

How to Get Information About a View in SQL Server