[firebase-br] Variavel Blob na Stored Procedure
Daivid Paulo
daividpaulo.infor em gmail.com
Dom Out 28 20:50:09 -03 2007
oi
Verifica se os dados são do mesmo tipo da variavel criada se for verifica
também as permissoões da tabela..
Espero ter ajuda,se não
mais valeu a intenção
Em 27/10/07, Renato Miranda <renato.smiranda em gmail.com> escreveu:
>
> Marcelo, tudo bem ?
>
> Veja o código a seguir:
>
> create table blah (
> id integer not null,
> data1 varchar(10),
> data2 varchar(22),
> data3 varchar(34),
> data4 varchar(46),
> amemo blob sub_type 1 segment size 80
> );
>
>
> SET TERM ^ ;
>
> CREATE OR ALTER PROCEDURE MAKE_BLOB (
> id integer,
> data1 varchar(10),
> data2 varchar(22),
> data3 varchar(34),
> data4 varchar(46),
> lf varchar(2)) /* isto é um "CR/LF" para separar,
> ou não, as linhas num memo */
> as
> declare variable blobstring varchar(125) = '';
> begin
> if (data1 is null) then data1 = 'Data1';
> if (data1 is null) then data1 = 'Data2';
> if (data1 is null) then data1 = 'Data3';
> if (data1 is null) then data1 = 'Data4';
> blobstring = data1 || lf || data2 || lf || data3 || lf || data4;
> if (id is not null) then
> update blah set amemo = :blobstring
> where id = :id;
> else
> insert into blah(data1, data2, data3, data4, amemo)
> values( :data1, :data2, :data3, :data4, :blobstring);
> end^
>
> SET TERM ; ^
>
> Essas linhas fazem parte de em pequeno exemplo postado pela Sra. Helen
> Borrie numa lista sobre IBO. A intenção é demonstrar o preenchimento de um
> campo blob via stored procedure.
>
> Não sei se é bem isso o que você precisa, mas espero que lhe dê algumas
> idéias,
>
>
> --
> Abraços,
>
> RMiranda
>
> Em 25/10/07, Marcelo Moreira <marcelo em easysistemasmg.com.br> escreveu:
> >
> > Pessoal,
> >
> > Boa tarde!
> >
> >
> >
> > Veja o DDL da SP que eu estou testando:
> >
> >
> >
> > SET TERM ^ ;
> >
> >
> >
> > CREATE PROCEDURE NEW_PROCEDURE_TESTE
> >
> > AS
> >
> > DECLARE VARIABLE TESTE BLOB SUB_TYPE 1 SEGMENT SIZE 150;
> >
> > begin
> >
> > /* Procedure Text */
> >
> > TESTE = 'TESTANDO';
> >
> > suspend;
> >
> > end^
> >
> >
> >
> > SET TERM ; ^
> >
> >
> >
> > GRANT EXECUTE ON PROCEDURE NEW_PROCEDURE_TESTE TO SYSDBA;
> >
> >
> >
> > Ai eu tento chama-la assim:
> >
> >
> >
> > execute procedure NEW_PROCEDURE_TESTE
> >
> >
> >
> > Ai aparece o seguinte erro:
> >
> >
> >
> > Unsuccessful execution caused by a system error that precludes
> >
> > successful execution of subsequent statements.
> >
> > internal error.
> >
> >
> >
> > O que eu preciso é passar um valor direto para a variável que no caso é
> do
> > tipo Blob, alguém sabe o que pode estar acontecendo? O que eu quero
> fazer
> > não é permitido?
> >
> >
> >
> > Obrigado pela atenção!
> >
> > Abraços
> >
> >
> >
> > Marcelo Moreira
> >
> >
> > No virus found in this outgoing message.
> > Checked by AVG Free Edition.
> > Version: 7.5.503 / Virus Database: 269.15.9/1084 - Release Date:
> > 24/10/2007
> > 00:00
> >
> > ______________________________________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > Para editar sua configuração na lista, use o endereço
> > http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> >
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
Mais detalhes sobre a lista de discussão lista