Anuncios

miércoles, 23 de febrero de 2011

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.

 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.

People who read this post also read :