USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Imagem em BD
INVICTOR
UBERABA
MG - BRASIL
Postada em 10/11/2004 11:38 hs            
Pessoal,
 
Eu preciso armazenar imagens jpg no meu BD pois o programa que eu tenho para confeccionar cartão não aceita eu amarzenar apenas o endereço por este motivo sou obrigado a armazenar as fotos dentro do banco de dados que fiz em access. Alguem poderia me ajudar com este codigo para armazenar as imagens eu peguei uns exemplos inclusive no vbweb só que achei meio confuso. Alguem poderia me explicar como eu faço para armazenar estas imagens no bd. Lembro que armazenar endereços não irá resolver meu problema
     
Sandro
não registrado
Postada em 10/11/2004 22:41 hs   
Usando a ADO, tente o seguinte para salvar a imagem:
    Dim cmpoBOB() as Byte
    Open strImagePath For Binary As #1
    ReDim cmpoBLOB(FileLen(NomeDoArquivoImagem.jpg))
    Get #1, , cmpotBLOB
    Close #1
    Tabela.Fields("Imagem").AppendChunk cmpoBLOB
    Tabela.Update
Para carregar, tente isto:
    Set Picture1.DataSource = SeuRecordset
    Picture1.DataField = "Imagem"
Ou, um método mais complexo, porém mais rápido:
    Dim TamImagem As Long, OffSet As Long
    Dim Bloco() As Byte
    Dim strTempPic As String
    Const TamBloco = 100
    strTempPic = App.Path & "TempPic.jpg"
    If Len(Dir(strTempPic)) > 0 Then
         Kill strTempPic
    End If
    Open strTempPic For Binary As #1
    TamImagem = SeuRecordset("Imagem").ActualSize
    Do While OffSet < TamImagem
         Bloco() = SeuRecordset("Imagem").GetChunk(TamBloco)
         Put #1, , Bloco()
         OffSet = OffSet + TamBloco
    Loop
    Close #1
    Picture1.Picture = LoadPicture(strTempPic)
    Kill strTempPic
O funcionamento é relativamente simples: imagens são blocos de bytes armazenados dentro do banco de dados, assim, para gravar uma imagem você deve abrir o arquivo de imagem em modo binário e quebrá-la em um vetor de bytes em memória, depois, acessando o campo, usar o método AppendChunk. Para carregar, você deverá ler o campo também em modo binário e criar um arquivo temporário em disco com os bytes do campo, depois, deverá usar o método LoadPicture da PictureBox para exibir a imagem.
Mas atenção fique prevenido de que seu banco de dados irá crescer em progressão geométrica com a gravação  das imagens dentro dele.
 
Um abraço,
Sandro.
     
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2025   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página