USE master
GO
DECLARE @DbName nvarchar(MAX)
SET @DbName = N'DataBase'
ALTER DATABASE @DbName
SET SINGLE_USER WITH ROLLBACK IMMEDIATE
ALTER DATABASE @DbName SET OFFLINE WITH NO_WAIT
GO
ALTER DATABASE @DbName SET ONLINE
GO
ALTER DATABASE @DbName
SET MULTI_USER
GO
參數我知道我可以使用EXEC但它是一個有點難看....如何通過一個數據庫名稱爲在SQL Server
您不能在大多數DML/DDL中參數化對象引用。你確實需要EXEC/sp_executesql,並建立一些動態查詢。 – MatBailie 2012-02-01 09:32:40
我假設你已經看到這個問題http://stackoverflow.com/questions/9093478/how-to-pass-a-database-name-as-a-parameter-in-sql-server它建議EXEC。這可能是唯一的方法。 – Ray 2012-02-01 09:32:43
@Ray你鏈接到我自己的問題:-P – 2012-02-01 19:49:10