Campo imagem

Dicas do Oracle Forms Builder - Blocos, Itens, LOV, Canvas, Triggers, comandos, PLL, d2kwutil, FMB, Alert, menus, etc
Responder
Alessandro
Rank: Programador Júnior
Rank: Programador Júnior
Mensagens: 23
Registrado em: Seg, 05 Jul 2004 4:29 pm

Tenho um campo criado no banco Oracle 9i que é do tipo BLOB. Como faço p/ que no Forms eu consigo gravar este campo.
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5024
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

Pode usar a package DBMS_LOB, caso as imagens estejam no servidor Oracle. Um exemplo seria :

Selecionar tudo

serv:/home/oracle>ls -ltr *.jpg
-rw-r----- 1 oracle dba 262903 Jun 9 11:19 povo_do_live.jpg
serv:/home/oracle>

system:SQL>create table demo_figuras
2 ( id_figura number primary key,
3 figura blob
4 )
5 /

Tabela criada.

system:SQL>create or replace directory DIR_FIGURAS as '/home/oracle';

Diretório criado.

system:SQL>declare
2   l_blob blob;
3   l_bfile bfile;
4 begin
5   insert into demo_figuras values ( 1, empty_blob() )
6   returning figura into l_blob;
7   l_bfile := bfilename( 'DIR_FIGURAS', 'povo_do_live.jpg' );
8   dbms_lob.fileopen( l_bfile );
9   dbms_lob.loadfromfile( l_blob, l_bfile, dbms_lob.getlength( l_bfile ) );
10  dbms_lob.fileclose( l_bfile );
11 end;
12 /

Procedimento PL/SQL concluído com sucesso.

system:SQL>select id_figura, dbms_lob.getlength(figura) BYTES_GRAVADOS
2 from demo_figuras;

ID_FIGURA BYTES_GRAVADOS
---------- --------------
1 262903

system:SQL>


Essa dica eu tinha gravada no meu diretório de dicas. Não fui eu que testei! Também é comentado que a figura pode estar na máquina do cliente, aí você deve usar java numa stored procedure. Vou ver se acho um exemplo disso tb!!!

[]'s
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5024
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

Se o blob que você quer gravar pelo FORMS é uma imagem, você pode usar o READ_IMAGE_FILE.

você cria um item do tipo IMAGE para o campo BLOB.
Daí grava nele com esse comando:

Selecionar tudo

Read_Image_File( 'c:\local\onde\esta\gravado' ,  'JPG' , 'bloco.campo_blob');
O Forms mostra automaticamente a imagem gravada.
Deathão
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 57
Registrado em: Qui, 16 Jun 2005 11:31 am
Localização: Assis
Contato:
--
Júnior

viu, supondo que eu tenho um cadastro de funcionários e nele eu tenho um IMAGE, e um botão onde eu abro uma caixa de diálogo procurando a foto do cara..

como eu faço a programação desse botão pra jogar a foto dentro do image..


tem algum esquema pronto???


valeu pessoal..
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5024
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

Use a Win_Api_Dialog.Open_File pra abrir essa telinha!

Consulte aqui no forum sobre a d2kwutil - já foi bastante falado! Existe um form chamado wapidemo! Ele tem vários exemplos!
Deathão
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 57
Registrado em: Qui, 16 Jun 2005 11:31 am
Localização: Assis
Contato:
--
Júnior

aonde eu acho esse form?


valeu ...
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5024
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 9 visitantes