回答
看一看所謂SQL Search的免費紅門工具,它做到這一點 - 它搜索整個數據庫的任何類型的字符串(S)的
。這對任何DBA或數據庫開發人員有很大必備的工具 - 爲什麼我已經提到它的絕對免費用於任何用途的?
所以在你的情況下,你可以鍵入你刪除的列名,並選擇只搜索你的存儲過程 - 在一秒鐘左右,你將有一個包含特定列的所有存儲過程的列表名稱。絕對好東西!
select object_name(object_id), *
from sys.sql_module
where definition like '%ColName%'
大括號button =格式代碼! – gbn 2011-05-13 07:07:58
您可以使用sys.sql_modules
SELECT
OBJECT_NAME(object_id)
FROM
sys.sql_modules
WHERE
definitiion LIKE '%MyDeletedColumn%'
的INFORMATION_SCHEMA的意見是不可靠的,因爲這樣的定義拆分成幾個爲nvarchar(4000)列。上述兩種方法返回nvarchar(最大)
編輯:鑑於SQL搜索是免費的,由marc_s註釋,這將是一個更好的解決方案。
一個更簡單的方法,如果該列被稱爲'my_highly_unique_column',可能是我使用的方法。 :)絕對值得+1。 – 2011-05-13 07:04:08
@Will A:如果您的模式爲「.MyDeletedColumn」或「MyDeletedColumn」YMMV,您可以對衝您的投注當然。並且謝謝 – gbn 2011-05-13 07:07:19
一種可能的方法是用虛擬參數調用每個存儲過程,其中SET SHOWPLAN_XML ON
處於活動狀態。這不會運行該過程,但會生成計劃的.xml表示 - 並且如果引用的列丟失,將會失敗。但是,如果您使用#temp表,則無論如何都會失敗。 :(
你最容易想這個過程自動化,而不是寫了3000過程調用
免責聲明:這不是防彈的方法對丟失列回升,但好運氣找到什麼!好
查看免費SQL搜索 - **更好的**在SQL Server中查找東西的方法... – 2011-05-13 16:15:22
- 1. 在SQL Server 2008中存儲過程
- 2. 在SQL Server 2008 Management Studio中查找存儲過程
- 3. SQL Server 2008存儲過程
- 4. SQL Server:存儲過程存儲錯誤
- 5. 錯誤在SQL Server 2005存儲過程
- 6. 存儲過程sql server 2008不在
- 7. SQL Server存儲過程中的錯誤
- 8. Sql Server 2008:存儲過程中的奇怪錯誤
- 9. 如果在SQL Server存儲過程中存在其他錯誤
- 10. SQL Server存儲過程的錯誤
- 11. SQL Server存儲過程的錯誤
- 12. SQL Server 2005的存儲過程錯誤
- 13. 如何在SQL Server 2008 R2中保存存儲過程?
- 14. 錯誤當創建存儲過程的SQL Server 2008 R2
- 15. 來自存儲過程的SQL Server 2008錯誤消息
- 16. BCP在SQL Server 2008:找不到存儲過程 'sp_describe_first_result_set'
- 17. 創建存儲過程SQL Server錯誤
- 18. SQL Server存儲過程語法錯誤
- 19. SQL Server存儲過程 - 語法錯誤
- 20. SQL Server存儲過程 - 轉換錯誤
- 21. SQL Server 2008存儲過程問題
- 22. Sql Server 2008遞歸存儲過程
- 23. sql server 2008存儲過程多選mybatis
- 24. SQL Server 2008孤立存儲過程?
- 25. SQL Server 2008 R2存儲過程很慢
- 26. sql server 2008存儲過程優化
- 27. 學習SQL Server 2008和存儲過程
- 28. 調用SQL Server存儲過程2008錯誤
- 29. SQL Server 2008中的「無法找到存儲過程」
- 30. 在SQL Server中查找語法上匹配的存儲過程
它是免費的嗎?我們有Red Gate許可證,所以從未檢查過...... :-) – gbn 2011-05-13 08:29:17
@gbn:它絕對,完全,完全** - ** F-R-E-E **! :-) – 2011-05-13 14:54:18