none
Notificação Banco cheio RRS feed

  • Pergunta

  • Bom dia tenho um programa em VB usando o banco Access 2k que tem uma limitação de 2gb de tamanho, acontece que essa aplicação já está rodando há uns 8 anos e aconteceu do banco de um dos nossos clientes alcançar esse limite.O problema foi que no automático do cliente ele achou q estava salvando as coisas e não estava,  e só foi perceber após alguns meses.Então para que isso não ocorra novamente gostaria de saber se tem alguma forma de verificar quando o banco estiver prestes a atingir ou atingido seu limite de tamanho para que possa colocar uma mensagem de aviso a cada acesso ao banco.Alguém tem alguma ideia?
    terça-feira, 28 de outubro de 2014 11:59

Respostas

  • Desculpe, pessoalmente acho uma má ideia fazer isso, mas é possível. Poderia ter algum botão ou evento específico para fazer essa verificação pois a cada consulta acho custoso (opinião pessoal).

    Com VB.NET

    Dim fileLength = New FileInfo("E:\Plugins\GdPicture.NET.9.PDF.dll").Length
    Dim humanMBSize As String = String.Format("{0} MB", ((fileLength / 1024F) / 1024F))
    Pode fazer um if se 
    ((fileLength / 1024F) / 1024F)
    > 2000 MB por ex.

    Marque como resposta se foi útil, por favor!
    • Sugerido como Resposta Deric Ferreira terça-feira, 28 de outubro de 2014 18:13
    • Editado Deric Ferreira terça-feira, 28 de outubro de 2014 18:14
    • Marcado como Resposta TamiresAp terça-feira, 28 de outubro de 2014 19:04
    terça-feira, 28 de outubro de 2014 18:13

Todas as Respostas

  • Não é possível notificar, a menos que use alguma ferramenta de monitoração de arquivos ou crie uma. Nestas situações o ideal é criar outra base ou mesmo partir para um banco de dados com maior robustez, como SQL Server.

    Existem ferramentas que facilitam essa migração: http://msdn.microsoft.com/en-us/library/hh313039(v=sql.110).aspx

    terça-feira, 28 de outubro de 2014 16:13
  • minha ideia seria monitorar a cada acesso ao banco o tamanho do banco quando tiver próximo ao 2gb notificar o usuário, tem ideia de como fazer isso em vb.Na verdade a migração acho q não seria uma opção pra mim, já que iremos lançar uma ferramenta mais atualizada do sistema porém o cliente me pediu essa notificação.
    terça-feira, 28 de outubro de 2014 17:44
  • Desculpe, pessoalmente acho uma má ideia fazer isso, mas é possível. Poderia ter algum botão ou evento específico para fazer essa verificação pois a cada consulta acho custoso (opinião pessoal).

    Com VB.NET

    Dim fileLength = New FileInfo("E:\Plugins\GdPicture.NET.9.PDF.dll").Length
    Dim humanMBSize As String = String.Format("{0} MB", ((fileLength / 1024F) / 1024F))
    Pode fazer um if se 
    ((fileLength / 1024F) / 1024F)
    > 2000 MB por ex.

    Marque como resposta se foi útil, por favor!
    • Sugerido como Resposta Deric Ferreira terça-feira, 28 de outubro de 2014 18:13
    • Editado Deric Ferreira terça-feira, 28 de outubro de 2014 18:14
    • Marcado como Resposta TamiresAp terça-feira, 28 de outubro de 2014 19:04
    terça-feira, 28 de outubro de 2014 18:13