Feedback

C# - SMO : Backup einer Datenbank erstellen

Veröffentlicht von am 01.05.2007
(1 Bewertungen)
Mit der Methode CreateBackupToFile() können Backups einer Datenbank mittels SMO gemacht werden. Dabei können Full, Differential und ein Transactionlog Backup gemacht werden.
GFU-Schulungen  [Anzeige]

C# 2019/2017/2015 Grundlagen

Nach Abschluss des Kurses sind Ihnen die Datentypen und Klassenbibliotheken von C# bekannt. Außerdem sind Sie in der Lage, mit Variablen umzugehen und deren Typen zu konvertieren. Sie definieren Namespaces und setzen diese ein, Sie erstellen eigene Klassen  und bauen Trouble Shooting ein.

VB.NET 2017/2015/2013 Komplett

Ziel des Seminars ist der flexible Umgang mit VB.NET, wie z.B. die damit verbundene eigenständige Entwicklung von Programmen oder das Verwenden von Datenbanken.

/// <summary>
      /// Erstellt ein Backup einer Datenbank
      /// </summary>
      /// <param name="serverName">Server, auf welchem die Datenbank liegt</param>
      /// <param name="databaseName">Die zu sichernde Datenbank</param>
      /// <param name="backupFileName">Pfad der Sicherung</param>
      /// <param name="useTrustedConnection">Windows Authentication</param>
      /// <param name="login">Benutzername, mit Backup - Rechten</param>
      /// <param name="password">Passwort</param>
      /// <param name="differential">Ob es ein Differential Backup werden sollte</param>
      /// <param name="init">Ob das Backupfile überschrieben werden soll</param>
      /// <param name="backupType">Backup Typ (Files, Datenbank , Log)</param>
      public void CreateBackupToFile(
         string serverName,
         string databaseName,
         string backupFileName,
         bool useTrustedConnection,
         string login,
         string password,
         bool differential,
         bool init,
         BackupActionType backupType)
      {
         // Verbindungsinformationen definieren
         ServerConnection serverConnection = new ServerConnection();
         serverConnection.ServerInstance = serverName;
      
         if (useTrustedConnection)
         {
            serverConnection.LoginSecure = true;
         }
         else
         {
            serverConnection.LoginSecure = false;
            serverConnection.Login = login;
            serverConnection.Password = password;
         }

         // Verbindung aufbauen
         Server server = new Server(serverConnection);
        
         try
         {
            server.ConnectionContext.Connect();

            // Backup in die angegebene Datei erstellen
            Backup backup = new Backup();
            
            backup.Action = backupType;
            backup.Incremental = differential;
            backup.Initialize = init;
            backup.Database = databaseName;

            if (this.PercentComplete != null)
               backup.PercentComplete += this.PercentComplete;
          
            backup.Devices.Add(new BackupDeviceItem(
               backupFileName, DeviceType.File));
            backup.SqlBackup(server);
         }
         finally
         {
            try
            {
               // Verbindung zum SQL-Server abbauen
               server.ConnectionContext.Disconnect();
            }
            catch { }
         }
      }

Kommentare zum Snippet

 

Logge dich ein, um hier zu kommentieren!