Ir para conteúdo
Fórum Script Brasil
  • 0

Exemplo De Armazenamento De Imagem Em Bd


hencker

Pergunta

2 respostass a esta questão

Posts Recomendados

  • 0

Alô!

Olha... não se basei apenas no que eu vou dizer... procure outras opiniões também...

Minha opinião pessoal, é a de que imagens não foram feitas para ficar em bancos de dados...

Por muito tempo insisti em colocar imagens em registros... desde o tempo do Clipper..., passando pelo Acess, pelo VisualFoxPro e dBASEIV... até que a ficha caiu, depois de arquivos enormes, falhas ocasioanadas por problemas de gravação ou de hd ou sistema operacional, dificuldade de padronização das imagens, etc....

Enfim, hoje eu coloco imagens em pastas acessiveis por referencia a um ou mais campos do banco de dados...

Por exemplo, no sistema de clubes, a foto fica em uma pasta com a primeira letra do nome da pessoa, dentro de outra pasta, com o dígito da categoria e, por fim, gravado com o codigo do associado:

c:\inetpub\wwwroot\acme\a\08400.jpg = foto de um associado com nome iniciando em "A", categoria Fundador ("0"), ficha 0084, titular (ultimos 00)

c:\inetpub\wwwroot\acme\images\c\198201 = foto de um dependente com nome iniciando em "C", categoria Efetivo ("1"), ficha do titular 0982, sequencia do dependente: 01

Outro exemplo, do cadastro de produtos do sistema comercial:

c:\inetpub\wwwroot\acme\images\mercado16\7896052600724.jpg agua mineral com gas schincariol 500ml, que esta no grupo 016-bebidas

Vantagem: nos exemplos, observe que as imagens ficam em uma pasta do servidor da intranet, sendo, portanto, usadas nas paginas de consultas pela web...

Ok?

Espero ter ajudado!

Abraços!

Link para o comentário
Compartilhar em outros sites

  • 0

Bom dia paulobergo,

Acho muitíssimo importante saber a opinião de outros colegas sobre o assunto, mas me reservo do direito de discordar.

Realmente até certo tempo atrás não era viável o armazenamento de imagens em banco de dados. Isso ocorria, pois os bancos de dados disponíveis não davam suporte direto a tal função e, quando davam, o faziam de forma precária.

Levando em consideração o problema de backups, disponibilidade, portabilidade e tempo de acesso a tais objetos, vários bancos de dados passaram a dar suporte nativo a tal função.

Hoje em dia quase todos os bancos de dados vêm preparados para isso. Podemos citar os que, em minha opinião, melhor fazem: Oracle, PostGreSQL, FireBird e InterBase. O PostGreSQL, projeto o qual acompanho de perto, tem um tempo de acesso, em média, 0,032 segundos mais rápido do que acesso direto, ou seja, o tempo de acesso a uma imagem armazenada dentro desse banco de dados é mais rápido do que se essa imagem estivesse guardada dentro de uma pasta. Isso ocorre graças a forma que o banco guarda as imagens em seu corpo.

Levando em consideração que meus clientes, tal como a grande maioria dos clientes de nossa profissão, acaba esquecendo-se de fazer backup e justo no dia que se esquece de fazer backup o sistema dá problemas (Lei de Murphy), achei interessante, e menos trabalhoso que fazer um sistema que se comunique via FTP, instalar um sistema de replicação no banco de dados do cliente. Assim as informações, sejam elas imagens ou dados, tem uma cópia realizada automaticamente em um servidor remoto, sem que haja prejuízo de velocidade da internet ou do sistema.

Pela internet você vai encontrar vários artigos sobre tal discussão que valem a pena serem lidos.

Continuo aguardando um exemplo... :unsure:

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...