Backup maken.

Status
Niet open voor verdere reacties.

wdevaal

Gebruiker
Lid geworden
19 nov 2001
Berichten
74
Ik ben bezig met een sql database applicatie te maken met “Microsoft Visual Basic 2008 Express Edition”

Nu wil ik de mogelijkheid hebben de database op te slaan als een backup bestand.
Hier voor gebruik ik de volgende code, die werk goed als ik eerst de database kan sluiten (Close).

Nu krijg ik de fout melding dat de database nog door de applicatie in gebruik is.
Hoe kan ik deze sluiten, en daarna weer openen ??

De code:


Dim strBestand As String = ""

With SaveFileDialog
.Filter = "Database bestand (*.mdf)|*.mdf"
.FilterIndex = 1
.InitialDirectory = Environment.SpecialFolder.MyDocuments.ToString
.Title = "Geef een bestandsnaam op"
.OverwritePrompt = True
.ShowDialog()
Me.Text = .FileName
End With

' De database wordt hier eerst opgeslagen.

Me.Validate()
Me.TrainBindingSource.EndEdit()
Me.TableAdapterManager.UpdateAll(Me.TrainBaseDataSet)

' Hier moet de database worden gesloten !!

strBestand = Me.strPath & "\trainbase.mdf"
My.Computer.FileSystem.CopyFile(strBestand, Me.Text, FileIO.UIOption.AllDialogs)

' Hier moet deze weer worden geopend.

Me.TrainTableAdapter.Fill(Me.TrainBaseDataSet.Train)


Einde code.

m.v.g Willy...
 
Laatst bewerkt:
Deze code werkt voor mijn applicatie

Try
Dim intTeller As Integer = 0
Dim strNaam As String
Path.Create()
strNaam = InputBox("Enter a name for the database", "Name database")
cnnAgenda.Close()
If Not strNaam = String.Empty Then
If File.Exists(Path.ToString & "\" & strNaam & ".sdf") = True Then
MessageBox.Show("Database already excist", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1)
Else
File.Copy("dbAgenda.sdf", Path.ToString & "\" & strNaam & ".sdf")
End If
Else
Do
intTeller += 1
strNaam = "Backup" & intTeller
Loop While File.Exists(Path.ToString & "\" & strNaam & ".sdf") = True
File.Copy("dbAgenda.sdf", Path.ToString & "\" & strNaam & ".sdf")
End If
cnnAgenda.Open()
Catch ex As Exception
MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1)
Me.Dispose()
End Try

De cnnAgenda.close() en cnnAgenda.open() zijn nog nodig in u programma denk ik.
Groeten Brecht
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan