使用SQL命令方式实现SqlServer附加和分离数据库
发布:智码IT网 阅读:
-- -----------------------------------------------------
-- 附加数据库 sp_attach_db
-- 注意:数据库所在目录需要给everyone用户添加控制权限,否者可能要报错
-- -----------------------------------------------------
DECLARE @res INT;-- 用于接收返回值
EXEC @res = sp_attach_db
@dbname = N'testDB',
@filename1 = N'D:\t_attach\testDB.mdf',
@filename2 = N'D:\t_attach\testDB_log.ldf';
SELECT @res;-- 查询返回值
-- -----------------------------------------------------
-- 分离数据库 sp_detach_db
-- -----------------------------------------------------
USE master;-- 防止报“数据库正在使用”的错误
IF EXISTS ( SELECT 1 FROM sysdatabases WHERE NAME = N'testDB' ) BEGIN
ALTER DATABASE testDB SET OFFLINE;-- 下线数据库
EXEC sp_detach_db N'testDB';
END;