Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

SQL Server executa backup com C#


você pode e é muito possível fazer o que você pediu,

mas fazer o backup sozinho usando SMO não é muito difícil, mas o difícil é gerenciar o backup e a restauração.

seria difícil colocar todo o código aqui, mas não vai caber. então vou tentar o meu melhor para colocar as linhas que você precisa.

SqlBackup.SqlBackup não retorna nenhum valor, é uma função void.mas leva um parâmetro que é "Server", tente o seguinte código:
Server srvSql;

//Connect to Server using your authentication method and load the databases in srvSql
// THEN

Backup bkpDatabase = new Backup();
bkpDatabase.Action = BackupActionType.Database;
bkpDatabase.Incremental = true; // will take an incemental backup
bkpDatabase.Incremental = false; // will take a Full backup 
bkpDatabase.Database = "your DB name";
BackupDeviceItem bDevice = new BackupDeviceItem("Backup.bak", DeviceType.File);
bkpDatabase.Devices.Add(bDevice );

bkpDatabase.PercentCompleteNotification = 1;// this for progress
bkpDatabase.SqlBackup(srvSql);
bkpDatabase.Devices.Clear();