程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> 深刻理解SQL Server系統存儲過程sp_rename

深刻理解SQL Server系統存儲過程sp_rename

編輯:關於SqlServer
語法

 
sp_rename [ @objname = ] 'object_name' , [ @newname = ] 'new_name'     [ , [ @objtype = ] 'object_type' ] 

備注


只能更改當前數據庫中的對象名稱或數據類型名稱。大多數系統數據類型和系統對象的名稱都不能更改。

每當重命名 PRIMARY KEY 或 UNIQUE 約束時,sp_rename 都會自動重命名關聯的索引。如果重命名的索引與 PRIMARY KEY 約束關聯,則 sp_rename 也會自動重命名該 PRIMARY KEY 約束。

sp_rename 可用於重命名主要和次要的 XML 索引。

重命名存儲過程、函數、視圖或觸發器將不會更改 sys.sql_modules 類別視圖的 definition 列中相應對象名的名稱。因此,我們建議不要使用 sp_rename 重命名這些對象類型。而是刪除對象,然後使用新名稱重新創建該對象。

重命名諸如表或列等對象將不會自動重命名對該對象的引用。您必須手動修改引用已重命名對象的任何對象。例如,如果您重命名表列,並且觸發器中引用了該列,則必須修改觸發器以反映新的列名。在重命名對象之前,使用 sys.sql_dependencIEs 列出該對象的依賴關系。

參數


[ @objname = ] 'object_name'

用戶對象或數據類型的當前限定或非限定名稱。如果要重命名的對象是表中的列,則 object_name 的格式必須是 table.column。如果要重命名的對象是索引,則 object_name 的格式必須是 table.index。

只有在指定了合法的對象時才必須使用引號。如果提供了完全限定名稱,包括數據庫名稱,則該數據庫名稱必須是當前數據庫的名稱。object_name 的數據類型為 nvarchar(776),無默認值。

[ @newname = ] 'new_name'

指定對象的新名稱。new_name 必須是名稱的一部分,並且必須遵循標識符的規則。newname 的數據類型為 sysname,無默認值。


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved