重要SQL Server語句 搜尋

2021-10-07 23:29:40 字數 1254 閱讀 2037

在本文中,我想分享一些重要的搜尋,例如搜尋儲存過程中使用的表以及搜尋儲存過程中使用的表和檢視的列表。

1)列出包含表的儲存過程。

select distinct syso.name from syscomments sysc inner join sysobjects syso on sysc.id= syso.id where sysc.text like '%tablename%' and upper(xtype)='p'

在這裡,此查詢將使用給定的表返回所有儲存過程。

注意:在上面的查詢中,將表名替換為:tablename。

什麼是syscomments物件?

檢視,規則,預設值,觸發器,check約束,default約束和儲存過程的實際**儲存在syscomments表中。 syscomments表中的text列包含所有這些物件的實際**。 知道這一點後,您就可以編寫一些簡單的t-sql**,這些**可以掃瞄syscomments表以查詢我們想要搜尋的實際表列名或資料庫物件名。

2)列出儲存過程中使用的表。

從sysobjects中選擇名稱,其中id在

(select sd.depid from sysobjects so, sysdepends sd  

where so.name = 'usp_your_stored_procedure' and sd.id = so.id ) and upper(xtype) = 'u'

該語句將列出給定儲存過程中使用的所有表。

(在我們的示例中,其為「 usp_your_stored_procedure」)

注意:這將僅返回此過程中使用的表。

如果您還想獲取檢視,則必須使用以下查詢。

select name from sysobjects where id in 

(select sd.depid from sysobjects so, sysdepends sd  

where so.name = 'usp_getrepreport_by_ou' and sd.id = so.id ) and upper(xtype) in ('u','v')

我希望這有助於除錯作為支援開發人員的較大的現有應用程式。

謝謝 巴拉斯·雷迪vasireddy

高階軟體工程師(rbc)

翻譯自:

SQLServer全文搜尋

全文搜尋的核心引擎建立在 microsoft full text engine for sql server msftesql 服務提供支援 使用全文搜尋可以快速 靈活地為儲存在 microsoft sql server 資料庫中的文字資料的基於關鍵字的查詢建立索引。與僅適用於字元模式的 like ...

SQLServer全文搜尋

全文搜尋的核心引擎建立在 microsoft full text engine for sql server msftesql 服務提供支援 使用全文搜尋可以快速 靈活地為儲存在 microsoft sql server 資料庫中的文字資料的基於關鍵字的查詢建立索引。與僅適用於字元模式的 like ...

Sql Server分頁語句

分頁方案一 利用not in和select top分頁 語句形式 select top 10 from testtable where id not in select top 20 id from testtable order by id order by id select top 頁大小 f...