Erro ao alterar a base de dados: Result consisted of more than one row

Bom dia Pessoal, agradeceria se alguem puder me dar uma força,

tenho uma aplicação que esta dando esse erro:
Erro ao alterar a base de dados:
Result consisted of more than one row

esse erro quando tento atualizar um registro, não acontece em todos os registros só em alguns, o código é o proprio do scriptcase, não aterei nada, é um botão de atualizar, em um formulário.

ja olhei a chave primária do registro e não esta duplicada, só existe um registro mesmo com o id que ele acusa mais de uma linha.

agradeço desde já. um abraço

Coloque em modo debug.
Existe algum código extra seu? Uma Stored Procedure, Function, trigger na tabela?

existe uma trigger
Select cota_vlr from cotas_sec where cotas_sec.cota_abvunid = new.q_ab_und into desp_un_ft;

if (desp_un_ft >= 0) then

update cotas_sec set cotas_sec.cota_lcd = (cotas_sec.cota_lcd - old.q_vl_prop + new.q_vl_prop),
                     cotas_sec.cota_un_saldo =cotas_sec.cota_un_saldo + (old.q_vl_prop - new.q_vl_prop)  

where cotas_sec.cota_abvunid = new.q_ab_und;

Select cota_vlr from cotas_sec where cotas_sec.cota_abvunid = new.q_ab_und into desp_un_ft;

if (desp_un_ft >= 0) then

update cotas_sec set cotas_sec.cota_lcd = (cotas_sec.cota_lcd - old.q_vl_prop + new.q_vl_prop),
                     cotas_sec.cota_un_saldo =cotas_sec.cota_un_saldo + (old.q_vl_prop - new.q_vl_prop)  

where cotas_sec.cota_abvunid = new.q_ab_und;

Select cota_vlr from cotas_sec where cotas_sec.cota_abvunid = new.q_ab_und into desp_un_ft;

pode estar trazendo mais de um registro.

muito Obrigado Haroldo, foi exatamente o que estava acontecendo. sempre lia os foruns aqui e vc é um dos que sempre compartilham o conhecimento. problema resolvido. Valeu!!

1 Curtida