Usuário com melhor resposta
Imagem compactada no banco

Pergunta
-
O sistema que utilizamos ao gravar imagens jpeg no banco compacta para zip antes.
Observei que eles tem uma forma de visualização desta imagem dentro do sistema.
Utilizando o codigo abaixo consegui gerar o arquivo .zip e extrair a imagem, mas esta solução não me atende pois tenho que montar um relatorio que busque esta imagem utilizando o jasp report.
DECLARE @pctStr INT
DECLARE @image VARBINARY(MAX)
SET @image = (SELECT FLATTACHMENT FROM ADATTACHMENT WHERE UPPER(NMFILE) LIKE('%.JPG') AND CDATTACHMENT = 15)
DECLARE @filePath VARCHAR(8000)
SET @filePath = 'C:\TEMP\TESTE2.zip'
EXEC sp_OACreate 'ADODB.Stream', @pctStr OUTPUT
EXEC sp_OASetProperty @pctStr, 'Type', 1
EXEC sp_OAMethod @pctStr, 'Open'
EXEC sp_OAMethod @pctStr, 'Write', NULL, @image
EXEC sp_OAMethod @pctStr, 'SaveToFile', NULL,@filePath, 2
EXEC sp_OAMethod @pctStr, 'Close'
EXEC sp_OADestroy @pctStr
Existe algum outra forma de fazer via comandos do banco sem ter que gerar o arquivo fisico? por exemplo gerar uma tabela temporaria com esta imagem descompactada.
hdk
Respostas
-
Sim, é o SA
hdk
- Marcado como Resposta Harley D.K. _ quinta-feira, 30 de julho de 2015 12:55
Todas as Respostas
-
-
Sql server 2008
a coluna CDATTACHMENT é chave sim.
Não tenho acesso a equipe de desenvolvimento para fazer a alteração.
Por ser temporaria, posso fazer o drop apos emitir o relatorio, só não sei se consigo descompactar a imagem pra jogar na tabela temporaria.
hdk
-
-
Sim, é o SA
hdk
- Marcado como Resposta Harley D.K. _ quinta-feira, 30 de julho de 2015 12:55