参考SQL Server联机丛书的 sp_renamedb与sp_rename
一、更改数据库名
sp_renamedb
更改数据库的名称。
语法
sp_renamedb [ @dbname = ] ' old_name ' ,
[ @newname = ] ' new_name '
参数
[ @dbname = ] ' old_name '
是数据库的当前名称。old_name 为 sysname 类型,无默认值。
[ @newname = ] ' new_name '
是数据库的新名称。new_name 必须遵循标识符规则。new_name 为 sysname 类型,无默认值。
返回代码值
0 (成功)或非零数字(失败)
权限
只有 sysadmin 和 dbcreator 固定服务器角色的成员才能执行 sp_renamedb。
示例
下例将数据库 accounting 改名为 financial。
EXEC sp_renamedb ' accounting ' , ' financial '
更改数据库的名称。
语法
sp_renamedb [ @dbname = ] ' old_name ' ,
[ @newname = ] ' new_name '
参数
[ @dbname = ] ' old_name '
是数据库的当前名称。old_name 为 sysname 类型,无默认值。
[ @newname = ] ' new_name '
是数据库的新名称。new_name 必须遵循标识符规则。new_name 为 sysname 类型,无默认值。
返回代码值
0 (成功)或非零数字(失败)
权限
只有 sysadmin 和 dbcreator 固定服务器角色的成员才能执行 sp_renamedb。
示例
下例将数据库 accounting 改名为 financial。
EXEC sp_renamedb ' accounting ' , ' financial '
二、更改表名或列名
sp_rename [ @objname = ] ' object_name ' ,
[ @newname = ] ' new_name '
[ , [ @objtype = ] ' object_type ' ]
/
A. 重命名表
下例将表 customers 重命名为 custs。
EXEC sp_rename ' customers ' , ' custs '
B. 重命名列
下例将表 customers 中的列 contact title 重命名为 title。
EXEC sp_rename ' customers.[contact title] ' , ' title ' , ' COLUMN '
[ @newname = ] ' new_name '
[ , [ @objtype = ] ' object_type ' ]
/
A. 重命名表
下例将表 customers 重命名为 custs。
EXEC sp_rename ' customers ' , ' custs '
B. 重命名列
下例将表 customers 中的列 contact title 重命名为 title。
EXEC sp_rename ' customers.[contact title] ' , ' title ' , ' COLUMN '