您的位置:首页 > 数据库

SQL Server 2005中附加、分离数据库T-SQL

2011-08-08 17:30 281 查看
use master
go

--------在master数据库中的databases视图中,查看要附加的数据库是否存在,如果存在,那么删除数据库

if exists (select name from sys.databases where name = N'数据库名')
drop database 数据库名
go

--------用已存在的数据库的数据文件和日志文件,通过附加的方式(attach),创建数据库
create database 数据库名 on
( filename = N'c:\数据库名.mdf'),
( filename = N'c:\数据库名_log.ldf')
for attach
go

-------如果数据库的拥有者Sid号与当前登录用户的Sid号一致,那么修改数据库的拥有者为:登录名为‘sa’的用户
if exists(select name from sys.databases where name =N'数据库名' and
suser_name(owner_sid) = suser_name() )
exec 数据库名.dbo.sp_changedbowner @loginame = N'sa' , @map = false
go

另外还可以通过系统存储过程来实现附加数据库和分离数据库:
----附加数据库、附加单一物理文件、分离数据库
sp_attach_db 'pubs', @filename1='c:\pubs.mdf' , @filename2 = 'c:\pubs.ldf'

sp_attach_single_file_db 'pubs', @physname='c:\pubs.mdf'

sp_detach_db 'pubs'

本文出自 “探索SQLServer” 博客,请务必保留此出处http://yupeigu.blog.51cto.com/3323001/1368146
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: