作者:dym0080
来源:CSDN
原文:https://blog.csdn.net/dym0080/article/details/81017777
版权声明:本文为博主原创文章,转载请附上博文链接!

最近在一个项目上遇到需要修改数据库名称、物理文件名和逻辑名称。如下图所示,数据库ty_cms_lz的物理文件名是ty_cms_lz.mdf和ty_cms_lz_0.ldf,逻辑文件名是lhc_cms和lhc_cms_log。

这样看上去很别扭,而且数据库一多很容易混淆。一般新建一个数据库的话,逻辑名称和物理文件名是跟数据库名称对应起来的。如下图新建的ty_test数据库。

为了让这些名称对应起来,接下来我会按以下步骤进行操作:

修改数据库名称
ty_cms_lz => ty_cms_mc
修改逻辑名称
lhc_cms=> ty_cms_mc
lhc_cms_log =>ty_cms_mc_log
修改物理文件名
ty_cms_lz.mdf =>ty_cms_mc.mdf
ty_cms_lz_0.mdf =>ty_cms_mc_log_mdf
修改数据库名
这个最简单,只需要右击数据库ty_cms_lz选择重命名即可。修改成ty_cms_mc后,后面的步骤都是要对ty_cms_mc进行操作。

修改逻辑名称
脚本语句如下:

use ty_cms_mc
go

-- 查看当前数据库逻辑名称
select name from sys.database_files;

-- 修改数据库逻辑名称
-- mdf(旧逻辑名:lhc_cms 新逻辑名:ty_cms_mc)
alter database ty_cms_mc modify file(name=lhc_cms, newname=ty_cms_mc)
-- log(旧逻辑名:lhc_cms_log 新逻辑名:ty_cms_mc_log))
alter database ty_cms_mc modify file(name=lhc_cms_log, newname=ty_cms_mc_log)
1
2
3
4
5
6
7
8
9
10
11
修改完成后我们再查看数据库属性,就看到逻辑名称已经修改过来了,如下图:

修改物理文件名
物理文件一般是存在sqlserver默认安装的路径,如下图所示:

分三个步骤来进行操作:

分离数据库
因为数据库在占用状态是不可以修改物理文件名称的,所以先必须分离数据库。
use master
go
-- 分离数据库
exec sp_detach_db ty_cms_mc
1
2
3
4
手动修改物理文件名
找到物理文件名的路径,右击重命名进行修改。

如果没有分离数据库,则直接重命名会报以下错误:

附加数据库
exec sp_attach_db ty_cms_mc,N'D:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\ty_cms_mc.mdf',N'D:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\ty_cms_mc_log.ldf'
1
最后我们再查看数据库ty_cms_mc的属性,可以看到已经全部修改过来了。

---------------------
作者:dym0080
来源:CSDN
原文:https://blog.csdn.net/dym0080/article/details/81017777
版权声明:本文为博主原创文章,转载请附上博文链接!

修改sqlserver的数据库名、物理名称和逻辑文件名的更多相关文章

  1. [转] 修改sqlserver的数据库名、物理名称和逻辑文件名

    转载: https://blog.csdn.net/dym0080/article/details/81017777

  2. 修改 计算机名后,修改SQLserver 注册服务器对象的名称,及登陆名

    select @@ServerName --查看当前所有数据库服务器名称select * from Sys.SysServers --修改数据库服务器名称sp_dropserver 'old_serv ...

  3. sqlserver数据库的物理存储格式和逻辑存储格式

    物理存储结构: 数据库文件在磁盘上的存储形式: 主数据文件:*.mdf.用来存储数据库的启动信息.存储部分或全部的数据.整个的数据库只能有一个主数据文件 辅助数据文件:*.ndf.用于存储主数据文件未 ...

  4. 批量修改Sqlserver中数据库对象的所属架构

    执行以下SQL,将执行结果拷贝出来,批量执行既可. SELECT 'ALTER SCHEMA dbo TRANSFER ' + s.Name + '.' + p.Name FROM sys.Proce ...

  5. 修改sqlserver的数据库排序规则语句

    alter database SOETMS collate Chinese_PRC_CI_AS

  6. ORACLE数据库的备份分为物理备份和逻辑备份两种。

    物理备份是将实际组成数据库的操作系统文件从一处拷贝到另一处的备份过程,通常是从磁盘到磁带.可以使用 Oracle 的恢复管理器(Recovery Manager,RMAN)或操作系统命令进行数据库的物 ...

  7. 修改sql数据库文件 物理文件名称

    -- 允许配置高级选项 EXEC sp_configure 'show advanced options', 1 GO -- 重新配置 RECONFIGURE GO -- 启用xp_cmdshell ...

  8. 如何修改SQL Server 2000的数据库逻辑与物理名称

    在项目中使用SQL Server 2000创建了一个数据库,发现名称与另一个数据库太相似,于是决定更改名称,包括: 在企业管理器中看到的数据库名,也是实际应用程序中连接用的数据库名称: 在磁盘上看的物 ...

  9. T-sql语句修改数据库逻辑名、数据库名、物理名(sql2000)

    --更改MSSQL数据库物理文件名Sql语句的写法 --注意:要在活动监视器里面确保没有进程连接你要改名的数据库!!!!!!!!!!!!!!!!!!!! -- Sql语句如下 USE master - ...

随机推荐

  1. AJAX 实战【三级联动】分析

    使用 AJAX 对全国地名进行选取 <%@ Page Language="C#" AutoEventWireup="true" CodeFile=&quo ...

  2. java_分解质因数

    题目内容: 每个非素数(合数)都可以写成几个素数(也可称为质数)相乘的形式,这几个素数就都叫做这个合数的质因数.比如,6可以被分解为2x3,而24可以被分解为2x2x2x3. 现在,你的程序要读入一个 ...

  3. MEF 插件式开发之 DotNetCore 初体验

    背景叙述 在传统的基于 .Net Framework 框架下进行的 MEF 开发,大多是使用 MEF 1,对应的命名空间是 System.ComponentModel.Composition.在 Do ...

  4. IIS7下,显示PHP错误(不显示500错误,而显示详细错误)

    玛德,IIS就是个坑,害得老子进行摸索了那么久,才找到了解决方法: 1.除了将php.ini配置为: display_errors = on; error_reporting = E_ALL & ...

  5. 【读书笔记】iOS-Objective-C编程

    Objective-C中的类可以继承自任何一个顶级类,需要注意的是,虽然NSObject是最常见的顶级类,但是它并不是唯一的顶级类,例如,NSProxy就是和NSObject一样的顶级类,所以你不能说 ...

  6. python联系题1

    一.有四个数字:1.2.3.4,能组成多少个互不相同且无重复数字的三位数?各是多少? 程序分析:可填在百位.十位.个位的数字都是1.2.3.4.组成所有的排列后再去 掉不满足条件的排列. # _*_ ...

  7. 世界地图和主要国家的 JSON 文件

    转自:http://blog.csdn.net/chinagissoft/article/details/52136253 世界地图: world.json 美洲: 美国:USA.json 加拿大:C ...

  8. Salesforce数据安全简介

    数据安全级别 Salesforce中将数据安全分为若干等级: 组织级别:组织级别的安全设定在整个系统内部都有效.这是最广泛的级别 对象级别:对象级别的安全设定可以限制用户对于对象的权限 字段级别:字段 ...

  9. 自定义控件详解(三):Canvas效果变换

    Canvas 画布 从前面我们已经知道了 Canvas 类可以绘出 各种形状. 这里学习一下Canvas 类的变换效果(平移,旋转等) 首先需要了解一下Canvas 画布, 我们用Canvas.Dra ...

  10. (网页)jQuery的时间datetime控件在AngularJs中使用实例

    百度一下,自己也想了一下,有一种简单,无脑的方式分享给你: <input ng-model="start" id="start" placeholder= ...