怎么修改MS SQL数据库名称?
1个回答
展开全部
在MSSQL中,如果你想修改某一个数据库的名称,你可以通过下面几种方法实现。
方法一:使用SP_RENAMEDB系统存储过程实现。
语法:sp_renamedb[@dbname=]'old_name',[@newname=]'new_name'
例子:我需要将数据库Test_1的名称修改为Testusemastergoexecsp_renamedb@dbname='Test_1',@
newname='Test';go有时候执行该脚本,会报如下错误:
消息5030,级别16,状态2,第1行
无法用排他锁锁定该数据库,以执行该操作。
出现这种情况,主要是还有其它程序或用户连接数据库,你必须确保没有任何用户正在使用数据库.可以通过将数据库设置为单用户模式。在数据库属性》连接选择里面找到限制访问选项,选择SIGLE_USER选项。然后执行上面语句,即可修改数据库名称。
SELECTSPIDFROMmaster.dbo.sysprocessesWWHEREdbid=DB_ID('Test1'); 否则执行KILL命令杀掉这些会话进程。
KILLSPID下面这个脚本可以比较好的处理上面问题,不需要你做过多额外操作,直接用脚本完成任务。
usemasterexecsp_dboption@dbname='OldDbName',@
optname='SingleUser',@
optvalue='TRUE'
execsp_renamedb@dbname='OldDbName',@
newname='NewDbName'
execsp_dboption@dbname='NewDbName',@
optname='SingleUser',@
optvalue='FALSE'GO检查修改成功。
SELECTname,database_id
FROMsys.databasesWHEREname=N'DbName';注意:SQLServer2008后续版本的MicrosoftSQLServer将删除该功能。请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。
方法二:使用ALTERDATABASE语句修改数据库名称。
USEmaster;GO
ALTERDATABASETest1MODIFYNAME=Test;GO方法三:使用MicrosoftSQLServerManagmentStudio管理工具,选中要修改名称的数据Test1,单击右键,选择重命名;注意如果有其他用户会话连接该数据库则会报错,必须先杀掉那些会话进程或使数据库处于单用户模式下,再执行上面操作,否则会报错。
作者:潇湘隐者
方法一:使用SP_RENAMEDB系统存储过程实现。
语法:sp_renamedb[@dbname=]'old_name',[@newname=]'new_name'
例子:我需要将数据库Test_1的名称修改为Testusemastergoexecsp_renamedb@dbname='Test_1',@
newname='Test';go有时候执行该脚本,会报如下错误:
消息5030,级别16,状态2,第1行
无法用排他锁锁定该数据库,以执行该操作。
出现这种情况,主要是还有其它程序或用户连接数据库,你必须确保没有任何用户正在使用数据库.可以通过将数据库设置为单用户模式。在数据库属性》连接选择里面找到限制访问选项,选择SIGLE_USER选项。然后执行上面语句,即可修改数据库名称。
SELECTSPIDFROMmaster.dbo.sysprocessesWWHEREdbid=DB_ID('Test1'); 否则执行KILL命令杀掉这些会话进程。
KILLSPID下面这个脚本可以比较好的处理上面问题,不需要你做过多额外操作,直接用脚本完成任务。
usemasterexecsp_dboption@dbname='OldDbName',@
optname='SingleUser',@
optvalue='TRUE'
execsp_renamedb@dbname='OldDbName',@
newname='NewDbName'
execsp_dboption@dbname='NewDbName',@
optname='SingleUser',@
optvalue='FALSE'GO检查修改成功。
SELECTname,database_id
FROMsys.databasesWHEREname=N'DbName';注意:SQLServer2008后续版本的MicrosoftSQLServer将删除该功能。请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。
方法二:使用ALTERDATABASE语句修改数据库名称。
USEmaster;GO
ALTERDATABASETest1MODIFYNAME=Test;GO方法三:使用MicrosoftSQLServerManagmentStudio管理工具,选中要修改名称的数据Test1,单击右键,选择重命名;注意如果有其他用户会话连接该数据库则会报错,必须先杀掉那些会话进程或使数据库处于单用户模式下,再执行上面操作,否则会报错。
作者:潇湘隐者
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询