BACKUP E RESTAURACAO DE BANCO DE DADOS SQL SERVER

GUILHERMEKUHL 12/06/2013 23:59:10
#424694
Boa noite amigos. Estou fazendo um projeto para a concluir meu curso Técnico de Informatica. Estou usando o Visual Basic 2010 e o Microsoft SQL Server 2012 na escola. Resolvi implantar no sistema uma tela de backup e restauração do banco de dados do SQL Server. Vasculhando a net, achei um código que poderia ser perfeito, a não ser por um detalhe: Quando vou verificar o arquivo no diretório que salvei através do sistema, a pasta se encontra vazia. O programa seria perfeito se não fosse esse detalhe. O código que encontrei deve ser de uma outra versão do Vb, porque quando o mesmo foi aberto na versão 2010, o VB fez uma conversão. Mas mesmo assim gostaria que vocês dessem uma olhada se tem algo errado com o código.

O código pode ser encontrado no site:

http://www.codeproject.com/Tips/279705/Backup-Restore-of-SQL-Server-database-using-VB-NET

O site disponibilizada por download o Demo do programa e também o source do projeto.


Imports System.Data.SqlClient

Public Class Form1
Dim con As SqlConnection
Dim cmd As SqlCommand
Dim dread As SqlDataReader

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
server([Ô].[Ô])
server([Ô].\sqlexpress[Ô])
End Sub

Sub server(ByVal str As String)
con = New SqlConnection([Ô]Data Source=[Ô] & str & [Ô];Database=Master;integrated security=SSPI;[Ô])
con.Open()
cmd = New SqlCommand([Ô]select * from sysservers where srvproduct=[ô]SQL Server[ô][Ô], con)
dread = cmd.ExecuteReader
While dread.Read
cmbserver.Items.Add(dread(2))
End While
dread.Close()
End Sub

Sub connection()
con = New SqlConnection([Ô]Data Source=[Ô] & Trim(cmbserver.Text) & [Ô];Database=Master;integrated security=SSPI;[Ô])
con.Open()
cmbdatabase.Items.Clear()
cmd = New SqlCommand([Ô]select * from sysdatabases[Ô], con)
dread = cmd.ExecuteReader
While dread.Read
cmbdatabase.Items.Add(dread(0))
End While
dread.Close()
End Sub

Private Sub cmbserver_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmbserver.SelectedIndexChanged
connection()
End Sub

Sub query(ByVal que As String)
On Error Resume Next
cmd = New SqlCommand(que, con)
cmd.ExecuteNonQuery()
End Sub

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
If ProgressBar1.Value = 100 Then
Timer1.Enabled = False
ProgressBar1.Visible = False
MsgBox([Ô]Successfully Done[Ô])
Else
ProgressBar1.Value = ProgressBar1.Value + 5
End If
End Sub

Sub blank(ByVal str As String)
If cmbserver.Text = [Ô][Ô] Or cmbdatabase.Text = [Ô][Ô] Then
MsgBox([Ô]Server Name & Database Blank Field[Ô])
Exit Sub
Else
If str = [Ô]backup[Ô] Then
SaveFileDialog1.FileName = cmbdatabase.Text
SaveFileDialog1.ShowDialog()
Timer1.Enabled = True
ProgressBar1.Visible = True
Dim s As String
s = SaveFileDialog1.FileName
query([Ô]backup database [Ô] & cmbdatabase.Text & [Ô] to disk=[ô][Ô] & s & [Ô][ô][Ô])
ElseIf str = [Ô]restore[Ô] Then
OpenFileDialog1.ShowDialog()
Timer1.Enabled = True
ProgressBar1.Visible = True
query([Ô]RESTORE DATABASE [Ô] & cmbdatabase.Text & [Ô] FROM disk=[ô][Ô] & OpenFileDialog1.FileName & [Ô][ô][Ô])
End If
End If
End Sub

Private Sub cmbbackup_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmbbackup.Click
blank([Ô]backup[Ô])
End Sub

Private Sub cmdrestore_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdrestore.Click
blank([Ô]restore[Ô])
End Sub
End Class


Agradeço qualquer tipo de ajuda.
Abraços !
OCELOT 13/06/2013 08:35:34
#424701
Você verificou no PC que está com o SQL Server instalado? Se não me engano o backup do SQL Server é salvo apenas no mesmo PC que está o servidor, não no PC em que o seu programa está rodando
GUILHERMEKUHL 13/06/2013 08:53:53
#424704

Citação:

:
Você verificou no PC que está com o SQL Server instalado? Se não me engano o backup do SQL Server é salvo apenas no mesmo PC que está o servidor, não no PC em que o seu programa está rodando



Olá ! Então, o PC é o mesmo....estou desenvolvendo o projeto no computador da escola. O SQL Server está instalado no mesmo micro que estou trabalhando...
Faça seu login para responder