BackUp de Base de Dados Access - Visual Basic .NET - Portugal-a-Programar
BackUp de Base de Dados Access
By security, May 12, 2010 in Visual Basic .NET
alguem me sabe dizer como posso criar um função que todos os dias às 9:00, por exemplo, crie uma copia de segurança da base de dados???
pelo titulo deduzo que seja access
Ya... é access. eu cria por a criar uma pasta com a data nos meus documentos e guradar uma cópia da base de dados nessa pasta ao iniciar o programa.
Basta copiares o ficheiro para um local qualquer. Tem em atenção que a bd não deve estar em uso.
Para fazeres uma coisa simples nem necessitas de fazer uma aplicação, basta meteres na agenda do Windows para copiar o ficheiro todos os dias à hora entendida.
a ideia era de ao fechar a aplicação perguntar se deseja fazer o backup e se a resposta for sim entao o proprio programa fazia-o.
é que esta aplicação é para nota final de curso. entao eu queria-o aprimorar com alguns extras para tentar tirar uma melhor nota.
A técnica é a mesma. Para fazeres um backup de Access basta copiares o ficheiro para um lado qualquer.
Mas se tens backup deves pensar numa funcionalidade de restore, partindo do principio de que quem usa não sabe (nem tem de saber) pormenores técnicos como fazer backup e restore de bases de dados.
sim mas como faço isso???
e que quem vai usar nao sabe mas quem me avalia na apresentação sabe e bem!!!
http://lmgtfy.com/?q=vb.net+copy+file
onde é que digo qual é o ficheiro????
Public Sub CopyFiles(ByVal sourcePath As String, ByVal DestinationPath As String)
If (Directory.Exists(sourcePath)) Then
For Each fName As String In Directory.GetFiles(sourcePath)
Dim dFile As String = String.Empty
dFile = Path.GetFileName(fName)
Dim dFilePath As String = String.Empty
dFilePath = DestinationPath + dFile
File.Copy(fName, dFilePath, True)
Viste os links do resultado da pesquisa do Google?
Logo o primeiro link tem a resposta a essa questão.
O backup em Access não é impedido caso a BD esteja aberta.
Precipitaste-te meu caro. Nunca disse que o backup em Access era impedido se a BD estivesse aberta.
Referi que era necessário ter em atenção ao facto da mesma estar em uso, se não percebes o porquê, passo a explicar: se a BD estiver em uso corres o risco de fazeres um backup que apanhe a bd num estado que não é desejável, por exemplo, alguém faz actualizações à bd enquanto fazes a cópia.
Basta invocares esse método passando no primeiro parâmetro é a localização do ficheiro que queres copiar e o segundo é o destino.
Exemplo: CopyFiles("C:\proj\db", "c:\backup");
Então e se em vez de usar esse codigo usar um Save File Dialog como faço???
não é mais simples???
eu consegui com o Open File Dialog selecionar o ficheiro que quero gravar num local (especificado no codigo). mas nao consigo escolher o local onde quero gravar apenas o ficheiro especificado no codigo
Mesmo para quem não programa, isso não é óbvio? :wallbash:
Não utilizes nenhum OpenFileDialog. Só precisas do SaveFileDialog e depois vais buscar o SaveFiledialog.FileName
nao me podes mandar o codigo???
Como te posso mandar o código se nem se quer sei que dados queres mostrar ? :S
Mostra a consulta que fazes para mostrar os tais registos...
eu nao quero mostrar dados nenhuns
simplesmente quero gravar um ficheiro (especificado no codigo) e grava-lo onde eu quiser! como se estivesse a gravar pela 1ª vez um documento word.
Pessoal, desculpem! pensei que estava noutro post....:S
Peço desculpa... -.-'
Quem não programa, ou para alguém que ainda não domina isto como me parece ser o caso, não é óbvio que o facto de um ficheiro estar em uso pode ter resultados não esperados. O que não falta para ai é pessoal que copia um doc com o word aberto e depois não percebe porque raio aquela última alteração que fez afinal não está no ficheiro que copiou...