Probeer dit:
String sqlCommandText = @"
ALTER DATABASE " + DbName + @" SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
DROP DATABASE [" + DbName + "]";
Zorg er ook voor dat uw verbindingsreeks u standaard de master
geeft database, of een andere database dan degene die u laat vallen!
Even terzijde, je hebt echt niet al die dingen rond je vragen nodig. De ConnectionState begint altijd met Closed
, daar hoef je dus niet naar te kijken. Evenzo, uw verbinding verpakken in een using
block elimineert de noodzaak om de verbinding expliciet te sluiten of te verwijderen. Het enige wat u echt hoeft te doen is:
String Connectionstring = CCMMUtility.CreateConnectionString(false, txt_DbDataSource.Text, "master", "sa", "happytimes", 1000);
using(SqlConnection con = new SqlConnection(Connectionstring)) {
con.Open();
String sqlCommandText = @"
ALTER DATABASE " + DbName + @" SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
DROP DATABASE [" + DbName + "]";
SqlCommand sqlCommand = new SqlCommand(sqlCommandText, con);
sqlCommand.ExecuteNonQuery();
}
result = 1;