Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Премахване на база данни на SQL Server чрез C#

Опитайте това:

String sqlCommandText = @"
ALTER DATABASE " + DbName + @" SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
DROP DATABASE [" + DbName + "]";

Също така уверете се че вашият низ за свързване ви задава по подразбиране на master база данни или всяка друга база данни, различна от тази, която изпускате!

Като настрана, наистина не се нуждаете от всички тези неща около вашите заявки. ConnectionState винаги ще започва от Closed , така че не е необходимо да проверявате за това. По същия начин обгръщане на вашата връзка в using block елиминира необходимостта от изрично затваряне или премахване на връзката. Всичко, което наистина трябва да направите е:

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;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Променлива на SQL сървър:цикъл срещу дубликат?

  2. sql сървър Масово вмъкване на csv с данни със запетая

  3. Име на колона като параметър в оператор INSERT

  4. Проблем с групово вмъкване на редов терминатор

  5. SQL Server 2016 :sys.dm_exec_function_stats