2009-10-14 69 views
0

我已經繼承了一個數據庫,其中未使用sprocs數量驚人。我已經從訪問它的DLL(所有訪問都是通過該DLL)提取使用的sprocs的名稱,並從那些sprocs中的EXEC語句中提取名稱,並且有幾百個未被調用。此外,幾乎所有的人都有可疑的冗長,統一的名字:我懷疑他們是由一種工具產生的。未使用sproc的成本是多少

我的問題是,在系統中保留未使用的sproc的成本是多少?有額外的維護,但我更感興趣,如果有任何增加內存消耗,處理時間等。

我應該在這裏說,我不打算刪除未使用的sprocs。這只是我想知道的事情。後面的故事只是爲了引起你的興趣並提示一個明智的答案。

這是SQL Server 2008的

+2

首先,確保您的「未使用」的sprocs實際上未被您的DLL中引用的過程使用。他們可以在這些「有效」程序中被調用。 – ProKiner 2009-10-14 22:06:08

回答

0

如果他們是真正的未使用的存儲過程,那麼就不會有處理時間的增加 - 因爲他們沒有被執行。

在存儲這些過程的數據庫大小(邊際)增加時會有成本,但是與表格的大小相比,我預計它會很小(除非它們有100個) )。

0

除了ChrisF的回答,如果您懷疑自動生成sprocs,那麼它們是爲了某種原因而創建的 - 創建一個用於訪問dB的統一API。

因此,修剪未使用的sprocs將修剪API,這是一切順利的,直到有人出現期望缺少API調用仍然存在。

相關問題