Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak przywrócić bazę danych z C#

Zmieniłem funkcje tworzenia kopii zapasowych i przywracania, aby wyglądały tak:

public void BackupDatabase(SqlConnectionStringBuilder csb, string destinationPath)
{
    ServerConnection connection = new ServerConnection(csb.DataSource, csb.UserID, csb.Password);
    Server sqlServer = new Server(connection);

    Backup bkpDatabase = new Backup();
    bkpDatabase.Action = BackupActionType.Database;
    bkpDatabase.Database = csb.InitialCatalog;
    BackupDeviceItem bkpDevice = new BackupDeviceItem(destinationPath, DeviceType.File);
    bkpDatabase.Devices.Add(bkpDevice);
    bkpDatabase.SqlBackup(sqlServer);
    connection.Disconnect();

}

public void RestoreDatabase(String databaseName, String backUpFile, String serverName, String userName, String password)
{
    ServerConnection connection = new ServerConnection(serverName, userName, password);
    Server sqlServer = new Server(connection);
    Restore rstDatabase = new Restore();
    rstDatabase.Action = RestoreActionType.Database;
    rstDatabase.Database = databaseName;
    BackupDeviceItem bkpDevice = new BackupDeviceItem(backUpFile, DeviceType.File);
    rstDatabase.Devices.Add(bkpDevice);
    rstDatabase.ReplaceDatabase = true;
    rstDatabase.SqlRestore(sqlServer);
}

W ten sposób po prostu korzystają z dowolnych plików. Nie ma już dyrektyw dotyczących przenoszenia plików.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wybierz wartości z pola XML w SQL Server 2008

  2. Piętro data w serwerze SQL

  3. Czy GETUTCDATE() zwróci tę samą wartość, jeśli zostanie użyta dwukrotnie w tej samej instrukcji?

  4. Jak zastosować posiadanie klauzuli z grupą przez w Select Query — samouczek SQL Server / TSQL, część 131

  5. 2 sposoby na zwrócenie listy wyzwalaczy w bazie danych SQL Server przy użyciu T-SQL