Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
Backup di un database utilizzando c#
domenica 08 maggio 2011 - 21.12
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Joly
Profilo
| Newbie
8
messaggi | Data Invio:
dom 8 mag 2011 - 21:12
Salve a tutti, avrei questo problema:
ho creato un'utility che dovrebbe fare il backup di un database utilizzando c# ma mi genera un errore.
Il mio codice di riferimento è quello che si trova al seguente link:
http://www.codeproject.com/KB/database/SQL_Server_2005_Database.aspx
tenendo conto che utilizzo l'autenticazione di Windows per il mio database, sviluppo con Visual Studio 2010 e come DBMS utilizzo SQL Server 2008 R2.
Ho aggiunto i riferimenti ai due namespace:
using Microsoft.SqlServer.Management.Smo;
using Microsoft.SqlServer.Management.Common;
e ho fatto uso della classe Microsoft.SqlServer.Management.Smo.Backup per il mio backup.
Il mio codice completo è il seguente:
public void BackupDatabase(String databaseName, String destinationPath)
{
Backup sqlBackup = new Backup();
sqlBackup.Action = BackupActionType.Database;
sqlBackup.BackupSetDescription = "ArchiveDataBase:" + DateTime.Now.ToShortDateString();
sqlBackup.BackupSetName = "Archive";
sqlBackup.Database = databaseName;
BackupDeviceItem deviceItem = new BackupDeviceItem(destinationPath, DeviceType.File);
SqlConnection sqlCon = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename= C:\\Users\\Nome Cognome\\Documents\\Visual Studio 2010
\\Projects\\dbNome\\dbNome\\dbNome.mdf;Integrated Security=True;");
ServerConnection connection = new ServerConnection(sqlCon);
Server sqlServer = new Server(connection);
Database db = sqlServer.Databases[databaseName];
sqlBackup.Initialize = true;
sqlBackup.Checksum = true;
sqlBackup.ContinueAfterError = true;
sqlBackup.Devices.Add(deviceItem);
sqlBackup.Incremental = false;
sqlBackup.ExpirationDate = DateTime.Now.AddDays(3);
sqlBackup.LogTruncation = BackupTruncateLogType.Truncate;
sqlBackup.FormatMedia = false;
try
{
sqlBackup.SqlBackup(sqlServer);
}
catch (Exception ex)
{
//.. messaggio di errore
MessageBox.Show(ex.Message, "ERRORE", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
finally
{
}
}
Il problema è che quando lancio il programma mi genera il seguente errore:
"IMPOSSIBILE ESEGUIRE BACKUP PER SERVER 'PC-NOMECOGNOME\SQLEXPRESS'."
Qualcuno mi potrbbe aiutare a risolvere questo problema?
Grazie per la disponibilità e per il tempo che mi dedicherete.
Joly
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !