Jump to content
Fórum Script Brasil
  • 0

Exemplo De Armazenamento De Imagem Em Bd


hencker
 Share

Question

2 answers to this question

Recommended Posts

  • 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 to comment
Share on other 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 to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      151k
    • Total Posts
      649.1k
×
×
  • Create New...