如何計算我的數據庫中存儲過程的數量,是否存在太多存儲過程是一種不好的做法?計數數據庫中的存儲過程?
5
A
回答
12
Select count(*) from sysobjects where xtype = 'P'
1
您需要儘可能多的應用程序需要。保持程序小而簡單是件好事。
如果您使用的是sql 2005,那麼查看您的proc count的可視方式是在可編程性下在SSMS中導航到您的存儲過程節點。點擊查看 - 對象資源管理器詳細信息,對象數量將顯示在右側。從系統對象,其中的xtype =「P」
如果所有的數據庫訪問的任務是通過SP的,那麼天空纔是極限
1
SELECT COUNT(*)。
6
Select count(1) from information_schema.routines
where routine_type = 'PROCEDURE'
2
你可能想從您的計數排除系統存儲過程
一種方法是調用:
select count(*) from sysobjects
where xtype = 'P'
and category = 0
and left(name,2) <> 'sp'
這是假設你不與SP
前綴你的程序+0
系統存儲過程通常以'sp_'爲前綴,儘管我已經看到生產系統的'sp_'是用於用戶定義的特效的前綴:-( – 2009-01-14 16:52:12
0
如果你使用它們,那麼真的沒有「太多」這樣的東西。
我有一個開發人員擔心他的存儲過程在數據庫中使用了太多的空間,所以我不得不實際計算所有存儲過程的總大小。 Good answer for that here.結果是,存儲在一起的procs的大小可能是數據庫總大小的0.001%。
1
這將排除使用繪圖工具時有時會產生的那些(他們將與DT_開始)
SELECT * FROM information_schema.routines
WHERE OBJECTPROPERTY(OBJECT_ID(SPECIFIC_NAME),'IsMSShipped') =1
AND routine_type = 'PROCEDURE'
0
下面是一個簡單的查詢,你可以使用:
SELECT COUNT(object_id) FROM sys.procedures
相關問題
- 1. 數據庫存儲過程
- 2. H2數據庫中的存儲過程
- 3. 數據庫交互的通用存儲庫或存儲過程?
- 4. 從腳本中跟蹤存儲過程存儲的數據庫
- 5. 存儲過程計數
- 6. 存儲過程SQL計數
- 7. 存儲過程中的H2數據庫選擇數據
- 8. 存儲過程未更新數據庫
- 9. java - 存儲過程數據庫鏈接
- 10. 存儲過程中的返回計數
- 11. 使用存儲過程在數據庫中存儲值
- 12. ASP.NET - 使用Oracle 9i數據庫/數據庫存儲過程
- 13. 從數據庫使用存儲過程計數數據使用內部連接
- 14. 使用存儲過程/函數創建數據庫,表,過程?
- 15. 存儲數據庫程序
- 16. 數據庫設計:如何在數據庫中存儲XML/JSON?
- 17. 刷新存儲過程中的數據
- 18. 格式存儲過程中的數據
- 19. 與存儲過程中的數據集
- 20. 存儲過程中的數據驗證
- 21. 在所有數據庫中搜索存儲過程/函數
- 22. 在存儲過程中輸出參數(oracle數據庫)
- 23. 存儲數據庫中的數據
- 24. 存儲過程的計數結果
- 25. Silverlight的數據存儲過程和存儲過程
- 26. 編寫數據庫中所有存儲過程中的文本
- 27. 使用存儲過程從數據庫檢索數據表
- 28. 使用存儲過程從數據庫獲取數據
- 29. 檢查存儲過程是否存在於數據庫中?
- 30. SQL Server中的所有存儲過程都存儲在哪個數據庫中?
使用「系統對象「直接被折磨 - 你最好使用」sys「。或INFORMATION_SCHEMA目錄視圖。 – 2009-01-14 20:03:49
我不知道,額外的`INFORMATION_SCHEMA`或`SYS`的按鍵讓我皺眉,因此被f upon。與它有什麼大不了的@marc_s? – 2016-08-09 12:33:21