关于SQL Server分离和附加数据库时遇到的问题

当需要分离数据库(假设要分离的数据库名称为first_database),有时候会提示:无法分离 数据库 'first_databse',因为它当前正在使用。那么这时候就需要将在first_database里建立的查询全部关掉,然后选择其他的数据库(除了first_database,其他都可以)建立查询,之后输入 exec sp_detach_db first_databse   进行分离。

关于SQL <wbr><wbr>Server分离数据库时遇到的问题  -------------图1
如图1所示,关闭跟first_database有关的查询,然后在上图所示地方选择其他数据库,之后就可以顺利执行了。

因为first_database数据库正在使用,你怎么能把人家给分离,当然得把他斩草除根,然后再让别人干这事。

 

当需要附加数据库时,t-sql语句为:

exec sp_attach_db 'first_database',
'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\first_database.mdf'

在第二昂的语句里的文件链接的地方至少要填写主文件,也可以在下面加上这个数据库里的所有文件包括日志文件:

'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\first_database_log.ldf'

但是比较麻烦,所以只要写上数据库主文件就可以了。

 

 数据库附加的时候至少要写上主文件(可以只写主文件,因为看起来可以更简洁)就可以了,何为主文件,可以再数据库属性的文件里查看,后缀为.mdf的为主文件,在创建数据库时的自动生成的数据文件就是主文件,之后再添加的虽然也是数据文件但不是主文件,它们的后缀为.ndf

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
第一章 SQL Server基础 ? ? 1、SQL 2008视频教程—SQL数据库连接 ? 2、SQL 2008视频教程-系统数据库 ? 3、SQL 2008视频教程-数据库创建 ? 4、SQL 2008视频教程-数据库创建2 ? 5、SQL 视频教程-对数据库属性的更改 ? 6、SQL 2008视频教程-分离数据库 ? 7、SQL 2008视频教程-删除数据库 ? 8、SQL 2008视频教程-常用数据类型 ? 9、SQL 2008视频教程-常用数据类型2 ? 10、标识种子和标识自增量 ? 11、SQL 2008视频教程-字段默认值 ? 12、利用T-SQL语句创建数据库 ? 13、利用T-SQL语句更改数据库名称 ? 14、利用T-SQL语句创建数据库 ? ? ? 第二章T-SQL语句 ? ? 1、SQL 2008视频教程-数据库表常用术语 ? 2、SQL视频教程-数据库表常用术语2 ? 3、SQL视频教程-T-SQL创建数据库详解 ? 4、SQL视频教程-T-SQL创建数据库详解2 ? 5、SQL视频-T-SQL语言与SQL语言的区别 ? 6、SQL 2008视频教程-T-SQL语句1 ? 7、SQL 2008视频教程-T-SQL语句2 ? 8、SQL 2008视频教程-T-SQL语句3 ? 9、SQL 2008视频教程-T-SQL语句4 ? 10、T-SQL语句5 ? 11、SQL 2008视频教程-T-SQL语句6 ? 12、SQL 2008视频教程-T-SQL语句7 ? 13、SQL 2008视频教程-T-SQL语句8 ? 14、利用T-SQL语句修改表 ? 15、利用T-SQL语句插入记录 ? 16、设置字段是否允许Null ? 17、利用Update语句更新表中记录 ? 18、利用Update语句更新表中记录2 ? 18、利用Update语句更新表中记录3 ? 19、利用Update语句更新表中记录4 ? 20、利用T_SQL语句删除记录 ? 21、Select查询语句1 ? 22、Select查询语句2 ? 23、Select查询语句3 ? 24、Select查询语句—逻辑或运算符 ? 25、Select查询语句—不等于运算符 ? 26、 Select查询语句—不等于运算符2 ? 27、 Select查询语句—不等于运算符3 ? 28、 T-SQL语句中的运算符优先级 ? 29、 Select查询语句1 ? 30、 Select查询语句2 ? 31、 Select查询语句4 ? 32、 Select查询语句5 ? 33、 Select查询语句6 ? 34、 Select查询语句7 ? 35、 Select查询语句-嵌套查询1 ? 36、 用T-SQL创建表及其主键 ? 38、多表嵌套查询 ? 39、多表嵌套查询2 ? 40、对结果进行排序 ? 41、 统计函数SUM ? 42、 统计函数AVG ? 43、 统计函数AVG2 ? 44、 定义标识 ? 45、 Like运算符 ? 46、函数的综合运用 ? 47、分组汇总 ? 48、Group分组 ? 49、Group分组2 ? 50、对分组设定条件 ? 51、谓词查询 exists ? 52、谓词查询 any ? 53、查询指定数量的记录 ? 54、将查询结果存到另一个表中 ? 55、更新表中记录 ? 56、联合查询 ? 57、从多个表中查询记录 ? 58、按指定条件查询多个表中的记录 ? 59、超联接查询 ? 60、左联接和右联接 ? ? 第三章 约束、索引和视图 ? ? 1、简介 ? 2、Check约束 ? 3、主键约束 ? 4、创建唯一键 ? 5、索引1 ? 6、索引2 ? 7、索引3 ? 8、索引4 ? 9、索引5 ? 10、如何修改索引名称 ? 11、对索引的删除 ? 12、什么是视图及视图优缺点 ? 13、设计模式下创建视图 ? 14、视图的修改 ? 15、视图的修改2 ? 16、利用T-SQL语句创建视图 ? 17、利用T-SQL语句修改视图
SQL Server 2008 中,可以通过以下步骤进行数据库分离附加: 1. 分离数据库: 在 SQL Server Management Studio 中,右键点击需要分离数据库,选择“任务” -> “分离”: ![Detach1](https://img-blog.csdn.net/20180509161254245?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3JlZmVyZW5jZV9pbmZv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/85) 在弹出的对话框中,可以选择保留数据库的元数据信息,例如用户、角色和权限等信息,也可以选择删除数据库的元数据信息: ![Detach2](https://img-blog.csdn.net/20180509161304131?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3JlZmVyZW5jZV9pbmZv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/85) 选择“确定”后,数据库就会被分离。 2. 附加数据库: 在 SQL Server Management Studio 中,右键点击“数据库” -> “附加”: ![Attach1](https://img-blog.csdn.net/20180509161312334?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3JlZmVyZW5jZV9pbmZv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/85) 在弹出的对话框中,选择需要附加数据库文件和日志文件: ![Attach2](https://img-blog.csdn.net/20180509161323603?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3JlZmVyZW5jZV9pbmZv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/85) 选择“确定”后,数据库就会被附加SQL Server 中。 需要注意的是,分离数据库后,数据库文件和日志文件会被从 SQL Server 中删除,所以在附加数据库,需要确保数据库文件和日志文件的路径和文件名与分离保持一致。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值