我正在尝试删除 sql server 数据库。如果不使用它会被删除。如果数据库正在使用中,则会发生异常can not delete database while it is in use
。我们可以使用选项从管理工作室中删除使用数据库Close existing connection
。但是我们如何使用 C# 代码来做到这一点呢?
问问题
1606 次
2 回答
3
ALTER DATABASE AdventureWorks2012
SET SINGLE_USER
WITH ROLLBACK IMMEDIATE;
DROP DATABASE AdventureWorks2012;
通过在其中编写上面的查询来制作一个脚本文件。然后执行此脚本文件,如下所示:
string sqlConnectionString = "Data Source=(local);Initial Catalog=AdventureWorks;Integrated Security=True";
FileInfo file = new FileInfo("C:\\myscript.sql");
string script = file.OpenText().ReadToEnd();
SqlConnection conn = new SqlConnection(sqlConnectionString);
Server server = new Server(new ServerConnection(conn));
server.ConnectionContext.ExecuteNonQuery(script);
于 2012-11-05T07:37:36.397 回答
2
在 MS SQL Server 上启动所有用户的简单方法是:
ALTER DATABASE [MyDB] SET Single_User WITH Rollback Immediate
GO
通过您的代码触发此查询并继续:-
于 2012-11-05T07:20:30.947 回答