我在我的數據庫中有大量的存儲過程,並且我希望看到其中的一個能否在我編寫新的程序之前完成我的任務。我將如何搜索現有存儲過程的名稱(而不是內容)?如何搜索我的存儲過程的名稱?
回答
的SQL Server 2005+:
SELECT name FROM sys.procedures WHERE name LIKE '%search_text%';
的SQL Server 2000:
SELECT name FROM sysobjects WHERE name LIKE '%search_text%' AND xtype = 'P';
另一個好主意是建立一個合理的命名方案。如果您的命名約定是一致且合乎邏輯的,那麼您根本不必搜索。
SELECT DISTINCT OBJECT_NAME(id)
FROM syscomments
WHERE OBJECT_NAME(id)
LIKE '%search_text%'
syscomments是一個向後兼容的視圖。在SQL Server 2005+上執行此操作有更有效的方法。 –
從SQL Server ** 2005 **和更新的版本開始,儘量避免使用*舊式*'sysXXXX'目錄視圖。相反,使用'sys'模式中的視圖 - 例如存儲過程的'sys.procedures'。 –
另外你爲什麼要發佈多個答案給你自己的問題? –
SELECT name
FROM sys.objects
WHERE type = 'P'
AND name LIKE '%search_text%'
'sys.procedures'會更專注 - 不需要指定'type ='P'' - 它只列出過程.... –
上述方法都很好,但更簡單的方法是從Red Gate下載SQL Search的副本。它是一個免費的實用程序,可插入SSMS,並允許您搜索整個服務器上的所有對象。
雖然它是一個有用的工具,但對於查找存儲過程名稱似乎過分了。 –
(PS我不是那個倒票的人,我認爲這是一個非常有用的工具,只是沒有必要去解決這個特定的問題,一個人應該熟悉目錄視圖,這很容易解決。) –
同意......我只是發現該實用程序對於日常管理而言是一個很好的幫助,並傾向於在安裝完成後使用它 – PseudoToad
- 1. 如何檢索SQL Server中存儲過程的名稱?
- 2. 如何在SQL Server 2008中基於名稱,企業名稱,大學名稱編寫搜索存儲過程
- 3. 存儲過程來搜索
- 4. SQL搜索存儲過程
- 5. Oracle存儲過程名稱
- 6. 搜索視圖的存儲過程
- 7. 搜索操作的存儲過程
- 8. 如何通過存儲過程中的數組進行搜索?
- 9. 動態表存儲過程的名稱
- 10. Get調用存儲過程的名稱
- 11. 搜索結果集中的多個搜索(存儲過程)
- 12. 如何iBatis的春+獲取存儲過程的名稱
- 13. 如何搜索Sql Server 2008 R2存儲過程的字符串?
- 14. 如何搜索此SQL存儲過程中的值對
- 15. 顯示Github中存儲庫的名稱React中的搜索API
- 16. 如何通過存儲過程處理「關鍵字搜索」?
- 17. 我的存儲過程文本搜索是錯誤
- 18. 問題與搜索查詢我的SQL Server存儲過程
- 19. 如何獲取調用存儲過程的數據庫名稱?
- 20. 如何更改存儲過程中結果集的名稱
- 21. 如何找到最長存儲過程的名稱?
- 22. 如何在c#中獲取存儲過程的參數名稱
- 23. 使用存儲過程搜索數據
- 24. 客戶搜索存儲過程
- 25. 進行高級搜索存儲過程
- 26. 存儲過程:變量表名稱
- 27. 存儲過程名稱標記
- 28. 按名稱刪除存儲過程組
- 29. DataSet存儲過程表名稱
- 30. 僅複製存儲過程名稱
+1爲合理的命名模式。不幸的是,這並不總是[立即]選項。 :) –