TSQLStoredProc

Delphi

10/02/2004

Tenho uma aplicação em Delphi 7/Oracle 9i, a qual conecto usando DbExpress. Conectei no banco usando o componente TSQLConection – (Conectou normal)

Coloquei na aplicação TSQLStoredProc e quando executo a Stored Procedure na aplicação aparece a mensagem abaixo, com os parâmetros CODIGO numérico e DESCRICAO varchar2:

´ORA-06502: PL/SQL: erro: erro de conversão de caractere em número
numérico ou de valor
ORA-06512: em line 1´.


Quando mudo o parâmetro numérico da procedure Pl/Sql para varchar2 aparece a mensagem abaixo:

´ORA-06502: PL/SQL: erro: buffer de string de caracteres pequeno demais
numérico ou de valor
ORA-06512: em ´ESTADIO.ALT_COMPETENCIA´, line 14
ORA-01407: não é possível atualizar
(´ESTADIO´.´COMPETENCIA´.´COMP_DESCR´) para NULL
ORA-06512: em line 1´.


Executando tal procedure através do SQL Plus, roda perfeitamente.
Através do Delphi 7 ocorre os erros acima.

Procedure:

CREATE OR REPLACE PROCEDURE alt_competencia
(p_comp_descr IN competencia.comp_descr¬TYPE,
p_comp_codigo IN competencia.comp_codigo¬TYPE,
p_retorno OUT VARCHAR2)
IS
BEGIN
UPDATE competencia
SET comp_descr = p_comp_descr
WHERE comp_codigo = p_comp_codigo;
p_retorno = ´OK´;
COMMIT;
EXCEPTION
WHEN OTHERS THEN
p_retorno = ´Não foi possível realizar esta operação!´;
ROLLBACK;
END alt_competencia



Roa

Roa

Curtidas 0
POSTAR