Cómo crear un backup de una base de datos en c#
En esta ocasión les explicare como realizar el un backup de una base de datos SQL Server usando Visual Studio.
Voy a utilizar c# para mi cometido, pero se puede utilizar también Visual Basic. Es muy parecido.
El ejemplo a descargarse contiene el proyecto en visual studio, el script para crear el procedimiento almacenado (copia respaldo.sql) y un backup de la base de datos (test.bak).
Para bajarse el ejemplo, ingrese a este link:
http://code.msdn.microsoft.com/Crear-un-backup-de-base-de-650b695a
Una vez en el link presione el botón c# mostrado en la siguiente figura:
Primeramente voy a crear en el SQL Server Management Studio un procedimiento almacenado que realiza un backup de mi base de datos:
Este código obtiene una copia de respaldo carpeta "copia" en el drive c de mi base de datos test en un archivo llamado test.bak
Luego, desde c# llamamos al procedimiento almacenado asi:
private void button1_Click(object sender, EventArgs e)
Con un código similar a este se pueden hacer miles de funciones en c# como:
Voy a utilizar c# para mi cometido, pero se puede utilizar también Visual Basic. Es muy parecido.
Soluciones de backup para SQL Server
El ejemplo a descargarse contiene el proyecto en visual studio, el script para crear el procedimiento almacenado (copia respaldo.sql) y un backup de la base de datos (test.bak).
Para bajarse el ejemplo, ingrese a este link:
http://code.msdn.microsoft.com/Crear-un-backup-de-base-de-650b695a
Una vez en el link presione el botón c# mostrado en la siguiente figura:
Primeramente voy a crear en el SQL Server Management Studio un procedimiento almacenado que realiza un backup de mi base de datos:
create procedure [dbo].[backupdb]
as
BACKUP DATABASE [test] TO DISK = N'C:\copia\test.bak'
WITH NOFORMAT, NOINIT, NAME = N'test-Completa Base de datos Copia de seguridad', SKIP, NOREWIND, NOUNLOAD, STATS = 10
Este código obtiene una copia de respaldo carpeta "copia" en el drive c de mi base de datos test en un archivo llamado test.bak
Luego, desde c# llamamos al procedimiento almacenado asi:
private void button1_Click(object sender, EventArgs e)
{
try
{
string ConnectionString = ConfigurationManager.ConnectionStrings["connectionStringName"].ToString();
SqlConnection cnn = new SqlConnection(ConnectionString);
SqlCommand cmd = new SqlCommand("backupdb", cnn);
cmd.CommandType = CommandType.StoredProcedure;
cnn.Open();
cmd.ExecuteNonQuery();
MessageBox.Show("El backup fue realizado exitosamente");
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
Este código lo que hace es obtener una copia de respaldo al hacer click con un botón en c#.Con un código similar a este se pueden hacer miles de funciones en c# como:
- Crear inicios de sesión en SQL Server.
- Crear estadísticas.
- Crear permisos
- Y muchas opciones más.
Este comentario ha sido eliminado por el autor.
ResponderEliminarhola perdón por usar tu solicitud
ResponderEliminarviendo el comentario tengo una duda
Cómo crear un procedimiento para hacer backup de una base de datos de interbase y ser ejecutado en c# al mismo tiempo poder restaurar la misma
Este código saca el backup.
ResponderEliminarPara restaurar, es algo bien parecido.
Que tal, estoy tratando de hacer un back up. Pero me da esta excepcion.
ResponderEliminarCannot perform a backup or restore operation within a transaction. BACKUP DATABASE is terminating abnormally.
El backup tiene que ser la primera palabra dentro de la transacción. El error te indica que antes del backup no puede haber otras sentencias.
ResponderEliminarComo puedes establecer que dias quieres que se haga el respaldo o si seran todos los dias pero desde c#?
ResponderEliminaro hay una manera de automatizar los respaldos pero desde c#?
hola disculpa tengo que importar algo para que no me salga el error en :
ResponderEliminarConfigurationManager