Xuh 0 Denunciar post Postado Outubro 21, 2008 Bom dia ! Criei uma tabela para consultar clientes cadastrados , nessa tabela eu posso incluir um novo registro ou alterar um já existente . . . até aqui sem problema . O problema está na hora de alterar algum dado de um registro existe , ao inves de atualizar os campos alterados, ele cria um novo registro . . . :rolleyes: segue codigo para darem uma analisada procedure insere_cliente(p_codigo number default null, p_nome varchar2 default null, p_data date default null, p_rg number default null, p_cpf number default null, p_end varchar2 default null, p_num number default null, p_comp varchar2 default null, p_tel number default null, p_cep number default null, p_bai varchar2 default null, p_cid varchar2 default null, p_uf varchar2 default null) is codigo number(10); begin select count(cod_cli) into codigo from clientesa where cod_cli = p_codigo; if codigo = 0 then insert into clientesa (cod_cli, nome, data_nasc, rg, cpf, telefone, endereco, numero, complemento, bairro, cidade, cep, uf) values((select max(cod_cli)+1 from clientesa),p_nome, p_data,p_rg ,p_cpf ,p_tel ,p_end , p_num, p_comp ,p_bai ,p_cid ,p_cep ,p_uf ); else update clientesa set nome = p_nome , data_nasc = p_data , rg = p_rg , cpf = p_cpf , endereco = p_end , numero = p_num , complemento = p_comp , telefone = p_tel , cep = p_cep , bairro = p_bai , cidade = p_cid , uf = p_uf where cod_cli = p_codigo and nome = p_nome; end if; Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Outubro 21, 2008 você compara com where cod_cli = p_codigo mas insere values((select max(cod_cli)+1 from clientesa) Deve ser isto. Compartilhar este post Link para o post Compartilhar em outros sites
Xuh 0 Denunciar post Postado Outubro 21, 2008 Vlw Motta !!! O problema estava no meu formulario !!!! http://forum.imasters.com.br/public/style_emoticons/default/blush.gif Eu deixei o campo desabilitado !!!!! <td>Código Filme</td> <td><input type="text" disabled="disabled" name="p_codigo" size=4 maxlength=4 value="'||p_codigo||'" ></td> e então só alterei para "readonly" <td>Código Filme</td> <td><input type="text" readonly name="p_codigo" size=4 maxlength=4 value="'||p_codigo||'" ></td> aí funcionou perfeitamente !!!! até mais . . . Compartilhar este post Link para o post Compartilhar em outros sites