什么是重命名数据库的正确过程?更改SQL数据库的名称
示例:我有一个数据库,可以通过SQL Server Management Studio访问,并具有类似“MyDatabase”的名称。这个数据库的物理性文件
- MyDatabase.mdf
- MyDatabase_log.ldf
如何重新命名这些逻辑和物理名称为 “MyNewDatabase”?
感谢帮助
什么是重命名数据库的正确过程?更改SQL数据库的名称
示例:我有一个数据库,可以通过SQL Server Management Studio访问,并具有类似“MyDatabase”的名称。这个数据库的物理性文件
如何重新命名这些逻辑和物理名称为 “MyNewDatabase”?
感谢帮助
逐字从here摘自:
有几种方法,使这一变化,但重命名在操作系统级别的物理数据库文件,你必须将数据库脱机
使用SSMS使数据库脱机(右键单击数据库,选择任务,脱机),更改操作系统级别的文件名称,然后使其联机。
您可以分离数据库,重命名文件,然后附加指向重命名文件的数据库来执行此操作。
您可以备份数据库然后恢复,在恢复过程中更改文件位置。使用T- SQL
ALTER DATABASE的databaseName设置脱机 GO
ALTER DATABASE DATABASENAME MODIFY FILE(NAME = DB,FILENAME =“C:\ PROGRAM 文件\ Microsoft SQL Server的\ MSSQL.2 \ MSSQL \ DATA \ db.mdf ') GO --IF更改日志文件名
ALTER DATABASE DATABASENAME MODIFY FILE(NAME = db_log,FILENAME = ' C:\ Program Files文件\ Microsoft SQL Server的\ MSSQL。 2 \ MSS QL \ DATA \ db.ldf') GO
ALTER DATABASE的databaseName网上订 GO
更多信息http://technet.microsoft.com/en-us/library/ms174269.aspx
有几种方法,使这一变化,但重命名在操作系统级别的物理数据库文件,您必须使数据库脱机
sp_renamedb'olddatabasename','newdatabasename'
但确保数据库未被使用。
在右键单击Management Studio中的数据库时出现的上下文菜单中的“重命名”选项时要小心。该选项不会更改数据库文件名称。要更改DATA和LOG文件的逻辑文件名,您还可以使用Management Studio界面,但不幸的是,它有时不起作用。
让我们正确地做...它应该始终工作。
附加数据库:对于它,使用T SQL:
USE [主] CREATE DATABASE [SqlAndMe] ON (FILENAME = N'C:\ ... \ NewName.mdf'), (FILENAME = N'C:\ ... \ NewName_log.LDF ') FOR ATTACH
重命名逻辑文件名:执行该T SQL:
USE [新名称] ALTER DATABASE [新名称] MODIFY FILE(NAME = N'OldName', NEWNAME = N'NewName') ALTER数据库[新名称] MODIFY FILE(NAME = N'OldName_log”,NEWNAME = N'NewName_log”) SELECT名字,physical_name的 FROM [新名称] .sys.database_files
它应该工作!
文件名重新连接
CREATE DATABASE MyAdventureWorks
ON(FILENAME = 'C:\ MySQLServer \ AdventureWorks_Data.mdf'),
(FILENAME = 'C:\ MySQLServer \ AdventureWorks_Log.ldf')
FOR ATTACH;
刷新您的SSMS,你们都完成了。
参考
注:如果您喜欢敲尽可能少的代码越好。数据库分离后,在更改文件名之前使用GUI开始重新附加过程。使用“脚本操作...”并获取代码。在用Windows资源管理器更改文件名后,在SSMS中的代码中更新它们并运行它。