我在 SQL Server 資料庫中有 200 多個存盤程序。
我們的存盤程序名稱以SP_{CAPITAL_LETTER}.
現在我們要將所有存盤程序的名稱更改為proc_{{small_letter}}.
例如:目前我們有一個名為的存盤程序SP_EMPLOYEE_LIST,我們想將其重命名為proc_employee_list.
我們是否有任何通用的方法來使用一些 T-SQL 查詢重命名所有存盤程序,而不是一個一個地重命名它們?
謝謝, 海特什
uj5u.com熱心網友回復:
您可以轉儲一個腳本來執行所有這些操作,然后運行該腳本
select STRING_AGG(CAST(
'exec sp_rename @objname = N' QUOTENAME(s.name '.' p.name, '''') ', @newname = N' QUOTENAME(LOWER(STUFF(p.name, 1, 3, 'proc_')), '''') ', @objtype = ''OBJECT'';'
AS nvarchar(max)), '
')
from sys.procedures p
join sys.schemas s on s.schema_id = p.schema_id
where p.name like 'sp[_]%';
你甚至可以把它放到一個變數中并運行它,sp_executesql如果你是那個(傻瓜)頑固的人。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/411056.html
標籤:
下一篇:JSON_EXTRACT回傳空值
