Desculpa a demora na resposta, mas estava de férias e mal olhei meus emails....
 
Consegui implementar traquilamente com o tipo bytea. Note que o tipo oid serve 
perfeitamente se vc implementar a gravação das imagens no lado do servidor, 
caso seja no lado do cliente o diretório dessas imagens tem que estar visíveis 
para o servidor para que possas utilizar as funções relativas a oid's como por 
exemplo lo_import, lo_export, lo_creat, etc. Para implementar através de bytea, 
a forma mais fácil que encontrei, considerando que uso ado + odbc, foi a 
ativação do parâmetro "bytea as LO" encontrada na configuração do driver odbc 
distribuido para postgresql. Esse driver odb pode ser encontrado em: 
http://wwwmaster.postgresql.org/download/mirrors-ftp?file=%2Fodbc%2Fversions%2Fmsi%2Fpsqlodbc_08_03_0200.zip
 O parâmetro pode ser encontrado em options > datasource > page2, considerando 
que esteja utilizando o windows. (aqui uso windows como cliente e linux como 
servidor) Por último, na IDE de programação, considere esse campo como um Blob 
e então utilize as mesmas funções que utilizaria para tal, segue um exemplo no 
delphi: Procedure insere_imagem;var imagem:TPicture;begintry  
imagem:=TPicture.Create;  OpenPictureDialog1.Execute;  if 
OpenPictureDialog1.FileName<>'' then   begin    
imagem.LoadFromFile(OpenPictureDialog1.FileName);    Clipboard.Assign(imagem);  
  ADOQuery_Imagens.Insert;    DBImage_foto.PasteFromClipboard;    
ADOQuery_Imagens.Post;    imagem.Free;end;Note que esta é apenas uma das 
possibilidades. Para maiores informações sobre bytea, Oid e directory, dê uma 
olhada na palestra do Diogo Biazus realizada na pgcon 2007 em 
http://www.postgresql.org.br/Palestras_do_PGCon_Brasil_2007, título: Preciso 
armazenar arquivos no banco. O que fazer? Atenciosamente,

ADENILTON Batista da Silva       Index Informática LTDA     (79)3431-3234 / 
9142-0886   [EMAIL PROTECTED]

From: [EMAIL PROTECTED]: [EMAIL PROTECTED]: Re: [pgbr-geral] Problemas na 
inserção de imagens em campos OidsDate: Wed, 7 May 2008 16:26:20 -0300



Olá Adenilton
 
Vi sua dúvida na lista do postgresql sobre colocar figuras no banco de dados.
Preciso fazer a mesma coisa, mas não manjo nada.
Você conseguiu fazer funcionar ? Pode me ajudar ?
Obrigado
Atenciosamente,Marcos Fabrício CorsoAnalista de Sistemas JúniorJM 
InformáticaFone : (41)  3076-0896Fax   : (41)  [EMAIL PROTECTED]
 

----- Original Message ----- 
From: Adenilton Batista da Silva 
To: [EMAIL PROTECTED]    .org.br 
Sent: Thursday, March 20, 2008 10:50 AM
Subject: [pgbr-geral] Problemas na inserção de imagens em campos Oids
Bom dia, Estou com o seguinte dilema ao tentar inserir imagens em campos oids 
na interface do cliente; Tenho a seguinte tabela: CREATE TABLE clientes(  
codigo integer NOT NULL,  denominacao character varying(1) NOT NULL,  
dtcadastro date NOT NULL,  ultmovimentacao date,  nome character varying(50) 
NOT NULL,  sexo character varying(1),  dtnascimento date,  apelido character 
varying(50),  endereco character varying(50),  complemento character 
varying(50),  bairro character varying(15),  cidade character varying(30),  
estado character varying(2),  cep character varying(9),  fone character 
varying(20),  fax character varying(10),  restricao boolean,  cpfcnpj character 
varying(14),  rgie character varying(10),  orgemissor character varying(5),  
ufemissor character varying(2),  limitecredito numeric(15,2),  pai character 
varying(50),  mae character varying(50),  conjuge character varying(50),  
profissao character varying(30),  email character varying(50),  cbendereco 
character varying(50),  cbcomplemento character varying(50),  cbbairro 
character varying(15),  cbcidade character varying(30),  cbestado character 
varying(2),  cbcep character varying(9),  cbfone character varying(20),  cbfax 
character varying(10),  obs character varying(100),  ativo boolean NOT NULL,  
foto oid,  CONSTRAINT clientes_pkey PRIMARY KEY (codigo))No cliente por 
exemplo, quando executo o comando "INSERT INTO CLIENTES (codigo, denominacao, 
dtcadastro, nome, foto) VALUES ('1', '2', '20/03/2008', 'CLIENTE TESTE', 
lo_import ('C:\TESTE.JPG'))" me retorna o seguinte erro: "ERRO: deve ser 
super-usuário para utilizar lo_import() do servidor"; Detalhe os usuários 
criados para uso nos clientes não são super-usuários por motivos de segurança. 
Estou programando no delphi e logo não tenho como incluir a biblioteca libpq do 
C (a não ser por uso de dll's) e pela quantidade de imagens fica inviável 
guardá-las em diretórios e gravar somente o caminho, gostaria de saber se 
alguem já passou por isto e teve alguma "luz" de como contornar este problema.

Desde já grato pela atenção dispensada a esta demanda,
 
Atenciosamsnte,
 
ADENILTON Batista da Silva       Index Informática LTDA     (79)3431-3234 / 
9142-0886   [EMAIL PROTECTED] 

Instale a Barra de Ferramentas com Desktop Search e ganhe EMOTICONS para o 
Messenger! É GRÁTIS! 


E-mail verificado pelo Terra Anti-Spam.Para classificar como spam, clique aqui. 



_______________________________________________pgbr-geral mailing [EMAIL 
PROTECTED]://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
_________________________________________________________________
Receba GRÁTIS as mensagens do Messenger no seu celular quando você estiver 
offline. Conheça  o MSN Mobile!
http://mobile.live.com/signup/signup2.aspx?lc=pt-br
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a