2012-02-12 74 views

回答

0

备份:

USE AdventureWorks2008R2; 
GO 
BACKUP DATABASE AdventureWorks2008R2 
TO DISK = 'Z:\SQLServerBackups\AdventureWorks2008R2.Bak' 
    WITH FORMAT, 
     MEDIANAME = 'Z_SQLServerBackups', 
     NAME = 'Full Backup of AdventureWorks2008R2'; 
GO 

还原:

----Put database into single user mode (terminates open connections - else restore fails) 
ALTER DATABASE YourDB 
SET SINGLE_USER WITH 
ROLLBACK IMMEDIATE 


RESTORE DATABASE YourDB 
FROM DISK = 'D:\temp\YourDB.bak' 
WITH REPLACE 
,MOVE 'YourDB_Data' TO 'C:\Program Files\Microsoft SQL Server\MSSQL\Data\YourDB_Data.mdf' 
,MOVE 'YourDB_Log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL\Data\YourDB_Data.ldf' 


ALTER DATABASE YourDB SET MULTI_USER 
GO 

分离:

EXEC master.dbo.sp_detach_db @dbname = N'AdventureWorks', 
@keepfulltextindexfile = N'true' 
GO 

附:

EXEC master.dbo.sp_attach_db @dbname = N'AdventureWorks2008R2', 
    @filename1 = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Data\AdventureWorks2008R2_Data.mdf', 
    @filename2 = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Data\AdventureWorks2008R2_log.ldf'; 
+0

感谢您的代码,但我真的不知道如何使用它。用vb编写不起作用。 – 2012-02-13 14:37:07

+0

您使用System.Data.SqlClient(.SqlCommand)来执行它们。所有前面的(at)都是一个变量,需要声明。否则,只需省略变量名称和等号。 – 2012-02-27 10:05:37